Skip to content

Go Veri Türleri

Aşağıda Go dilindeki tüm yerleşik türler listelenmiştir, referans olarak kullanılabilir. Daha fazla detay için Referans El Kitabı - Türler adresini ziyaret edebilirsiniz.

Boolean Türü

Boolean türü sadece doğru ve yanlış değerlere sahiptir.

TürAçıklama
booltrue doğru değer, false yanlış değer

TIP

Go'da tamsayı 0 yanlış değeri temsil etmez, sıfır olmayan tamsayılar da doğru değeri temsil edemez. Yani sayılar boolean değerlerin yerine mantıksal判断 için kullanılamaz, ikisi tamamen farklı türlerdir.

Tamsayı Türleri

Go'da farklı bit sayıları için farklı türler ayrılmıştır, esas olarak işaretsiz ve işaretli tamsayılara ayrılır.

SıraTür ve Açıklama
uint8İşaretsiz 8 bit tamsayı
uint16İşaretsiz 16 bit tamsayı
uint32İşaretsiz 32 bit tamsayı
uint64İşaretsiz 64 bit tamsayı
int8İşaretli 8 bit tamsayı
int16İşaretli 16 bit tamsayı
int32İşaretli 32 bit tamsayı
int64İşaretli 64 bit tamsayı
uintİşaretsiz tamsayı en az 32 bit
intTamsayı en az 32 bit
uintptrİşaretsiz 64 bit tamsayıya eşdeğerdir, ancak özel olarak işaretçi işlemleri için kullanılır, ölü işaretçi adreslerini saklamak için kullanılır.

Ondalık Sayı Türleri

IEEE-754 ondalık sayılar, esas olarak tek hassasiyetli ve çift hassasiyetli ondalık sayılara ayrılır.

TürAçıklama
float32IEEE-754 32 bit ondalık sayı
float64IEEE-754 64 bit ondalık sayı

Karmaşık Sayı Türleri

TürAçıklama
complex12864 bit reel ve sanal sayı
complex6432 bit reel ve sanal sayı

Karakter Türleri

Go dili string'leri tamamen UTF-8 uyumludur.

TürAçıklama
byteuint8 ile eşdeğerdir, ANSCII karakterleri ifade edebilir
runeint32 ile eşdeğerdir, Unicode karakterleri ifade edebilir
stringString yani byte dizisidir, []byte türüne yani byte slice'ına dönüştürülebilir

Türetilmiş Türler

TürÖrnek
Array[5]int, uzunluğu 5 olan tamsayı dizisi
Slice[]float64, 64 bit ondalık sayı slice'ı
Mapmap[string]int, anahtarı string, değeri tamsayı olan map
Structtype Gopher struct{}, Gopher struct'ı
Pointer*int, bir tamsayı işaretçisi.
Functype f func(), parametresi ve dönüş değeri olmayan fonksiyon türü
Interfacetype Gopher interface{}, Gopher arayüzü
Channelchan int, tamsayı kanalı

Sıfır Değer

Resmi belgede sıfır değer zero value olarak adlandırılır. Sıfır değer sadece kelimenin tam anlamıyla sıfır değildir, bir türün boş değeri veya varsayılan değeri olarak adlandırmak daha doğru olur.

TürSıfır Değer
Sayı türleri0
Boolean türüfalse
String türü""
ArraySabit uzunlukta karşılık gelen türün sıfır değer koleksiyonu
Structİç alanları sıfır değer olan struct
Slice, map, fonksiyon, arayüz, channel, pointernil

nil

nil diğer dillerdeki none veya null gibidir, ancak eşdeğer değildir. nil sadece bazı referans türlerinin sıfır değeridir ve hiçbir türe ait değildir. Kaynak koddan nil'in sadece bir değişken olduğu görülebilir.

go
var nil Type

Ayrıca nil == nil gibi ifade derlenemez.

Golang by www.golangdev.cn edit