# Go Operatörler
Go operatörler (operators) dersini işliyoruz.
Diğer tüm programlama dillerinde olduğu gibi Go programlama dilinde de operatörler değişkenler ve değerler üzerinde işlem gerçekleştirmek için kullanılırlar. Buradaki işlem birçok kategoriye sahiptir. Şimdi bu kategorileri yazalım ve ardından tek tek inceleyelim;
  • Aritmetik (arithmetic) operatörler
  • Atama (assignment) operatörleri
  • Karşılaştırma (comparison) operatörleri
  • Mantıksal (logical) operatörler
  • Bit (bitwise) operatörleri

1. Aritmetik Operatörler

Go aritmetik (arithmetic) operatörler sayılar üzerinde matematiksel işlemler yapılırken kullanılırlar. a=5 ve b=2 değişkenleri üzerinden aşağıdaki örnek kullanımları inceleyebilirsiniz.
Operatör
Açıklama
Örnek
+
Toplama
a + b => 7
-
Çıkarma
a - b => 3
*
Çarpma
a * b => 10
/
Bölme
a / b => 2.5
%
Mod Alma
a % b => 1
++
Bir Artırma
a++ => 6
--
Bir Eksiltme
a-- => 4
++ ve -- ifadeleri Go programlama dilinde sadece statement ile kullanılabilir. Expression olarak kullandığınızda hata alırsınız. İkisi arasındaki fark için Tıklayınız.
Doğru Kullanım (Statement)
Yanlış Kullanım (Expression)
1
a++
2
fmt.Print(a)
Copied!
1
fmt.Print(a++)
Copied!

2. Atama Operatörleri

Go Atama operatörleri değerleri değişkenlere atarken kullanırlar. Tabi bu atamaları yaparken aynı zamanda aritmetik operatörleri de kullanarak pratik kod yazabilirsiniz. a=5 ve b=2 değişkenleri üzerinden aşağıdaki örnek kullanımları inceleyebilirsiniz.
Operatör
Açıklama
Eş Kullanım
=
Eşittir
a = b
+=
Toplayarak Eşitle
a = a + b
-=
Çıkararak Eşitle
a = a - b
*=
Çarparak Eşitle
a = a * b
/=
Bölerek Eşitle
a = a / b
%=
Mod Alarak Eşitle
a = a % b
&=
Bit AND İşlemi
a = a & b
|=
Bit OR İşlemi
a = a | b
^=
Bit XOR İşlemi
a = a + b

3. Karşılaştırma Operatörleri

Go karşılaştırma (comparison) operatörleri ile sayılar üzerinde büyük, küçük ve eşit ifadeleriyle karşılaştırma yapabilirsiniz. a=5 ve b=2 değişkenleri üzerinden aşağıdaki örnek kullanımları inceleyebilirsiniz.
Operatör
Açıklama
Eş Kullanım
==
Eşit mi
a == b // False
!=
Eşit değil mi
a != b // True
>
Büyük mü
a > b // True
<
Küçük mü
a < b // False
>=
Büyük eşit mi
a >= b // True
<=
Küçük eşit mi
a <= b // False

4. Mantıksal Operatörleri

Go mantıksal (logical) operatörler ile şartlı durumları birleştirebilirsiniz. a=5 ve b=2 değişkenleri üzerinden aşağıdaki örnek kullanımları inceleyebilirsiniz.
Operatör
Açıklama
Eş Kullanım
&&
Her iki durumda doğruysa
a < 5 && b < 10 // True
||
Herhangi bir durum doğruysa
x < 5 || x == 10 // True
!
Durumu ters çevir
!(a < 5 && b < 10) // False

5. Bit Operatörleri

Go bit (bitwise) operatörler ile değişkenleri karşılaştırarak AND , OR , XOR , NOT , Sağa Kaydırma ve Sola Kaydırma işlemlerini gerçekleştirebilirsiniz. Örnek kullanımları aşağıdan inceleyebilirsiniz.
Operatör
Açıklama
&
AND işlemi
|
OR işlemi
^
XOR işlemi
<<
Sola kaydırma
>>
Sağa kaydırma
& operatörü ile elinizdeki bir sayıyı başka bir sayı ile bit düzeyinde AND işlemine tabi tutabilirsiniz. Örnek kullanım aşağıdadır:
1
a := 3
2
// bit değeri: 0011
3
4
b := 5
5
// bit değeri: 0101
6
7
a &= b
8
9
// 0011
10
//(AND) 0101
11
//-------------
12
// 0001
13
14
15
fmt.Println(a) // 1
Copied!
| operatörü ile elinizdeki bir sayıyı başka bir sayı ile bit düzeyinde OR işlemine tabi tutabilirsiniz. Örnek kullanım aşağıdadır:
1
a := 3
2
// bit değeri: 0011
3
4
b := 5
5
// bit değeri: 0101
6
7
a |= b
8
9
// 0011
10
//(OR) 0101
11
//-------------
12
// 0111
13
14
15
fmt.Println(a) // 7
Copied!
^ operatörü ile elinizdeki bir sayıyı başka bir sayı ile bit düzeyinde XOR işlemine tabi tutabilirsiniz. Örnek kullanım aşağıdadır:
1
a := 3
2
// bit değeri: 0011
3
4
b := 5
5
// bit değeri: 0101
6
7
a ^= b
8
9
// 0011
10
//(XOR) 0101
11
//--------------
12
// 0110
13
14
15
fmt.Println(a) // 6
Copied!
>> operatörü ile elinizdeki bir sayının bit değeri üzerinden sağa kaydırma işlemi yapabilirsiniz. Soldan gelen yeni bitle ise 0 değerini alır. Örnek kullanım aşağıdadır:
1
a := 5
2
// bit değeri: 0101
3
4
a >>= 2
5
// yeni bit değeri: 0001
6
7
fmt.Println(a) //1
Copied!
<< operatörü ile elinizdeki bir sayının bit değeri üzerinden sola kaydırma işlemi yapabilirsiniz. Sağdan gelen yeni bitle ise 0 değerini alır. Örnek kullanım aşağıdadır:
1
a := 13
2
// bit değeri: 1101
3
4
a <<= 5
5
// yeni bit değeri: 110100000
6
7
fmt.Println(a) //416
Copied!
Last modified 1yr ago