Rehber - Lua V4

Fivem.com.tr

Fivem.com.tr
Katılım
1 Eki 2022
Mesajlar
5,891
Tepki
80
İfadeler

Lua’ da ifadeler sayısal sabitleri, dizeleri, değişkenleri, tekli ve ikili işlemleri ve işlev çağrılarını içerir.

İlişkisel Operatörler

Lua dili ilişkisel operatörleri kullanmamızı sağlar.

=== ~ =





Tüm bu operatörler true veya false sonuçlanabilir.



Herhangi iki değere her iki operatörü de uygulayabiliriz. Lua türlerine göre karşılaştırma yapar. Farklı türde değerler varsa, Lua o farklı değerleri de dikkate alır.



Programımızda tabloları, kullanıcı girişlerini ve işlevleri karşılaştırabiliriz.







a = {}; ax = 1; ay = 0



b = {}; bx = 1; by = 0



c = a



a==c veya a~=b



Biz sadece iki sayı veya iki dize için bu operatörleri uygulayabiliriz. Lua dili numaraları karşılaştırır. Lua dili yerel seti izleyerek ve alfabetik sıraya göre oluşturulan dizeleri de karşılaştırır.



Farklı tipte değerler karşılaştırıldığında, dikkatli olmak gerekir. Örneğin "0"==0 yanlış bir ifadedir. Ayrıca, 2<15 tabi ki doğrudur ama "2"<"15" ifadesi yanlıştır daha doğrusu bize istediğimiz sonucu vermez. Çünkü tırnak içerisindeki sayılarda birer kelime karakter dizesidir.





Mantıksal Operatörler

Lua’ da mantıksal operatörler olarak and, or, not operatörleri kullanılır. Kontrol yapıları gibi, tüm mantıksal operatörler true, false veya nil olabilir. And operatörü false ise ilk argüman döner, aksi takdirde ikinci argüman döner. Or operatörü false değilse ilk argüman, aksi takdirde ikinci argüman döner .Bu konuyu biraz irdelemeniz lazım.Aşağıda örnekler verdim kendinizde farklı kodlar yazarsanız konuyu daha iyi anlarsınız.





print(nil and 13) –> nil



print(false and 13) –> false



print(4 or 5) –> 4



print(false or 5) –> 5



Not operatörü her zaman true veya false döndürür:



print(not nil) –> true



print(not false) –> true



print(not 0) –> false



print(not not nil) –> false



Verdiğim örnekleri yazıp deneyebilirsiniz.



Birleştirme (..)

Lua’ da “.. ” (iki nokta) operatörü birleştirme işlemini ifade eder. İşlenen herhangi bir sayı ise, dizeyi bu sayıya dönüştürür.



Örnek:



print (“Merhaba” .. “Fivemturk”) -> Merhaba Fivemturk



print (0 .. 1) -> 01



Lua dizeleri sabit değerlerden oluşur. Birleştirme operatörü işlemde bir değişiklik yapmadan, yeni bir dize oluşturur.



Bir sayıyı bir dizeye dönüştürmek için tostring fonksiyonu çağırılabilir veya birleştirme operatörü kullanılabilir.







print (toString (10) == "10") -> true

print (10 .. "" == "10") -> true üstteki örnekle aynı işlevi yapar



10 sayısını .. "" operatörüyle string bir değere dönüştürdük.Böylece iki "10" sayısı birbirine eşit yani true sonucunu verir.



Operatör Önceliği

Programlarken operatör önceliği sıralaması



^



not



* /



+ –



..



= ~ ===



and



or



Aşağıda işlem önceliğine göre bazı örnekler vardır.



a+i < b/2+1 (a+i) < ((b/2)+1)



5+x^2*8 5+((x^2)*8)



a < y and y <= z (a < y) and (y <= z)



-x^2 -(x^2)



x^y^z x^(y^z)


Asla çok geç değil. Yarın ölecek olsanız bile, doğru ve açık olun ve bugün mutlu bir insan olun. -Lama Yeshe

Konu alıntıdır, yanlış veya hatalı bir bilgi/paylaşım var ise yanıtlayabilir veya bizimle iletişime geçebilirsiniz.
 

Şu anda bu konu'yu okuyan kullanıcılar

Benzer konular

Üst