Swift - Operatörler

Operatör, derleyiciye belirli matematiksel veya mantıksal işlemleri gerçekleştirmesini söyleyen bir semboldür. Objective-C, yerleşik operatörler açısından zengindir ve aşağıdaki operatör türlerini sağlar -

  • Aritmetik operatörler
  • Karşılaştırma Operatörleri
  • Mantıksal operatörler
  • Bitsel Operatörler
  • Atama Operatörleri
  • Aralık Operatörleri
  • Çeşitli Operatörler

Bu eğitim, aritmetik, ilişkisel, mantıksal, bitsel, atama ve diğer operatörleri tek tek açıklayacaktır.

Aritmetik operatörler

Aşağıdaki tablo, Swift 4 dili tarafından desteklenen tüm aritmetik operatörleri göstermektedir. Değişken varsayA 10 ve değişken tutar B 20 tutar, sonra -

Şebeke Açıklama Misal
+ İki işlenen ekler A + B 30 verecek
- İlk işlenenden ikinci işleneni çıkarır A - B -10 verecek
* Her iki işleneni de çarpar A * B 200 verecek
/ Payı paydaya böler B / A 2 verecek
% Modül İşleci ve bir tamsayı / kayan bölümden sonra kalan kısım B% A 0 verir

Karşılaştırma Operatörleri

Aşağıdaki tablo, Swift 4 dili tarafından desteklenen tüm ilişkisel operatörleri göstermektedir. Değişken varsayA 10 ve değişken tutar B 20 tutar, sonra -

Şebeke Açıklama Misal
== İki işlenenin değerlerinin eşit olup olmadığını kontrol eder; evet ise, o zaman durum gerçek olur. (A == B) doğru değil.
! = İki işlenenin değerlerinin eşit olup olmadığını kontrol eder; değerler eşit değilse, koşul doğru olur. (A! = B) doğrudur.
> Soldaki işlenenin değerinin sağ işlenenin değerinden büyük olup olmadığını kontrol eder; evet ise, o zaman durum gerçek olur. (A> B) doğru değil.
< Sol işlenenin değerinin sağ işlenenin değerinden küçük olup olmadığını kontrol eder; evet ise, o zaman durum gerçek olur. (A <B) doğrudur.
> = Sol işlenenin değerinin sağ işlenenin değerinden büyük veya ona eşit olup olmadığını kontrol eder; evet ise, o zaman durum gerçek olur. (A> = B) doğru değil.
<= Sol işlenenin değerinin sağ işlenenin değerinden küçük veya bu değere eşit olup olmadığını kontrol eder; evet ise, o zaman durum gerçek olur. (A <= B) doğrudur.

Mantıksal operatörler

Aşağıdaki tablo, Swift 4 dili tarafından desteklenen tüm mantıksal operatörleri göstermektedir. Değişken varsayA 1 ve değişken tutar B 0 tutar, sonra -

Şebeke Açıklama Misal
&& Mantıksal AND operatörü çağrıldı. Her iki işlenen de sıfır değilse, koşul doğru olur. (A && B) yanlıştır.
|| Mantıksal VEYA Operatörü çağrıldı. İki işlenenden herhangi biri sıfır değilse, koşul doğru olur. (A || B) doğrudur.
! Mantıksal NOT Operatörü olarak adlandırıldı. İşlenenin mantıksal durumunu tersine çevirmek için kullanın. Bir koşul doğruysa, Mantıksal NOT operatörü onu yanlış yapar. ! (A && B) doğrudur.

Bitsel Operatörler

Bitsel operatörler bitler üzerinde çalışır ve bit işlem gerçekleştirir. &, | Ve ^ için doğruluk tabloları aşağıdaki gibidir -

p q p & q p | q p ^ q
0 0 0 0 0
0 1 0 1 1
1 1 1 1 0
1 0 0 1 1
Assume A = 60; and B = 13;

In binary format, they will be as follows:

A = 0011 1100

B = 0000 1101

-----------------

A & B = 0000 1100

A|B = 0011 1101

A^B = 0011 0001

~A = 1100 0011

Swift 4 dili tarafından desteklenen bitsel operatörler aşağıdaki tabloda listelenmiştir. Değişken varsayA 60 ve değişken tutar B 13 ve sonra 7− tutar

Şebeke Açıklama Misal
& İkili VE İşleci, her iki işlenende de varsa sonuca biraz kopyalar. (A & B) 0000 1100 olan 12 verir
| İkili VEYA İşleci, işlenenlerden birinde varsa, bir bit kopyalar. (A | B), 0011 1101 olan 61 verecek
^ İkili XOR İşleci, bir işlenen içinde ayarlanmışsa, ancak her ikisinde birden ayarlanmamışsa biti kopyalar. (A ^ B), 0011 0001 olan 49 verecek
~ İkili Birler Tamamlayıcı Operatörü tekli ve bitleri 'çevirme' etkisine sahiptir. (~ A), 2'nin tümleyen formunda 1100 0011 olan -61'i verecektir.
<< İkili Sol Kaydırma Operatörü. Soldaki işlenenler değeri, sağ işlenen tarafından belirtilen bit sayısı kadar sola taşınır. (A << 2 240 verecektir, yani 1111 0000
>> İkili Sağ Shift Operatörü. Soldaki işlenenler değeri, sağ işlenen tarafından belirtilen bit sayısı kadar sağa taşınır. A >> 2, 0000 1111 olan 15 verir

Atama Operatörleri

SSwift 4 aşağıdaki atama operatörlerini destekler -

Şebeke Açıklama Misal
= Basit atama operatörü, sağ taraftaki işlenenlerden sol taraf işlenenine değerler atar C = A + B, A + B'nin değerini C'ye atar
+ = VE atama operatörü ekle, Sol operanda sağ operandı ekler ve sonucu sol operanda atar. C + = A, C = C + A'ya eşdeğerdir
- = Çıkar VE atama operatörü, Sağ operandı sol operanddan çıkarır ve sonucu sol operanda atar. C - = A, C = C - A'ya eşdeğerdir
* = AND atama operatörünü çarpın, sağ operandı sol operandla çarpar ve sonucu sol operanda atar C * = A, C = C * A'ya eşdeğerdir
/ = VE atama operatörünü böl, Sol operandı sağ operandla böler ve sonucu sol operanda atar. C / = A, C = C / A'ya eşdeğerdir
% = Modül VE atama operatörü, İki işlenen kullanarak modülü alır ve sonucu sol operanda atar C% = A eşdeğerdir C = C% A
<< = Sol kaydırma VE atama operatörü C << = 2, C = C << 2 ile aynıdır
>> = Sağ kaydırma VE atama operatörü C >> = 2, C = C >> 2 ile aynıdır
& = Bitsel AND atama operatörü C & = 2, C = C & 2 ile aynıdır
^ = bit düzeyinde özel OR ve atama operatörü C ^ = 2, C = C ^ 2 ile aynıdır
| = bitsel kapsayıcı OR ve atama operatörü C | = 2, C = C | ile aynıdır | 2

Aralık Operatörleri

Swift 4, bir dizi değeri ifade etmek için kısayol olan iki aralık operatörü içerir. Aşağıdaki tablo bu iki operatörü açıklamaktadır.

Şebeke Açıklama Misal
Kapalı Aralık (a ... b) a'dan b'ye uzanan bir aralığı tanımlar ve a ve b değerlerini içerir. 1 ... 5 1, 2, 3, 4 ve 5 verir
Yarı Açık Menzil (a .. <b) a'dan b'ye uzanan, ancak b'yi içermeyen bir aralığı tanımlar. 1 .. <5 1, 2, 3 ve 4'ü verir
Tek Taraflı Menzil

a…, öğelerin bir ucundan sonuna kadar uzanan bir aralığı tanımlar

… A, baştan başlayarak bir aralığı tanımlar

1… elemanların 1, 2,3… sonunu verir

… 2 başlangıcı… 1,2 verir

Çeşitli Operatörler

Swift 4, aşağıdakiler dahil birkaç önemli operatörü destekler: rangeve ? : aşağıdaki tabloda açıklanmıştır.

Şebeke Açıklama Misal
Tekli Eksi Sayısal bir değerin işareti, önekli - -3 veya -4
Unary Plus Herhangi bir değişiklik yapmadan üzerinde çalıştığı değeri döndürür. +6, 6 verir
Üçlü Koşullu Durum ? X: Y Koşul doğruysa? Ardından X değeri: Aksi takdirde Y değeri

Operatör Önceliği

Operatör önceliği, bir ifadedeki terimlerin gruplandırılmasını belirler. Bu, bir ifadenin nasıl değerlendirildiğini etkiler. Bazı operatörler diğerlerinden daha yüksek önceliğe sahiptir; örneğin, çarpma operatörü toplama operatöründen daha yüksek önceliğe sahiptir.

Örneğin, x = 7 + 3 * 2; burada, x operatörü + 'dan daha yüksek önceliğe sahip olduğu için 20 değil, 13 olarak atanır, bu nedenle önce 3 * 2 ile çarpılır ve sonra 7'ye eklenir.

Burada, en yüksek önceliğe sahip operatörler tablonun en üstünde, en düşük olanlar en altta görünür. Bir ifade içinde, daha yüksek öncelikli operatörler ilk olarak değerlendirilecektir.

Şebeke Açıklama Misal
Birincil İfade Operatörleri () []. ifade ++ ifade-- soldan sağa
Tekli Operatörler

* & + -! ~ ++ ifade --expr

* /%

+ -

>> <<

<> <=> =

==! =

sağdan sola
İkili Operatörler

&

^

|

&&

||

soldan sağa
Üçlü operatör ?: sağdan sola
Atama Operatörleri = + = - = * = / =% = >> = << = & = ^ = | = sağdan sola
Virgül , soldan sağa