Goda kısa değişken bildirim operatörü

Kaydolun ve günde 1000 $ kazanın ⋙

Golang'da kısa değişken bildirim operatörü (:=), benzersiz bir ada ve başlangıç ​​değerine sahip değişkenler oluşturmak için kullanılır. Bu operatörün kullanılmasının temel amacı, fonksiyonlar içerisinde yerel değişkenleri bildirmek, başlatmak ve değişkenlerin kapsamını daraltmaktır. Değişkenin türü, ifadenin türüne göre belirlenir. var anahtar sözcüğü ayrıca belirli bir türdeki değişkenleri oluşturmak için de kullanılır. Yani Golang'da değişken oluşturmanın iki yolu olduğunu şu şekilde söyleyebiliriz:

Go'da kısa değişken bildirim operatörü

  • var anahtar sözcüğünü kullanma
  • Kısa değişken bildirim operatörünü (:=) kullanın

Şimdi Golang'da kısa değişken bildirim operatörünün nasıl kullanılacağını öğrenelim!

Ana içerik

Golang'da kısa değişken bildirim operatörünü kullanma sözdizimi

variable_name := biểu thức hoặc giá trị

Burada değişkeni tanımladıktan hemen sonra başlatmanız gerekiyor. Ancak var anahtar sözcüğünü kullanarak bildirim zamanında başlatmayı önleyebilirsiniz. Değişkenin tipini belirtmeye gerek yok. Sağ taraftaki ifade veya değer değişkenin türünü değerlendirmek için kullanılır.

Örnek: Burada değişkenleri kısa bildirim operatörü kullanarak bildiriyoruz ve değişkenin türünü belirtmiyoruz. Değişkenin türü, operatörün sağ tarafındaki ifadenin türüne göre belirlenir :=.

// Minh họa chương trình Go dùng := (toán tử khai báo ngắn) 
package main

import "fmt"

func main() {

	// khai báo và khởi tạo biến
	a := 30

	// lấy một biến chuỗi
	Language: = "Go Programming"

	fmt.Println("The Value of a is: ", a)
	fmt.Println("The Value of Language is: ", Language)

}

Sonuç:

The Value of a is:  30
The Value of Language is:  Go Programming

Kısa bildirim operatörünü kullanarak birden fazla değişkeni bildirme

Kısa bildirim operatörü aynı veya farklı tipteki birden fazla değişkeni tek bir bildirimde bildirmek için de kullanılabilir. Bu değişkenlerin tipleri operatörünün sağ tarafındaki ifade ile değerlendirilir :=.

Örneğin:

// Minh họa chương trình Go dùng toán tử khai báo ngắn := short để khai báo nhiều
// biến thành một câu lệnh khai báo duy nhất
package main

import "fmt"

func main() { 

// nhiều biến của cùng kiểu(int)
geek1, geek2, geek3 := 117, 7834, 5685

// nhiều biến của các kiểu khác nhau
geek4, geek5, geek6 := "GFG", 859.24, 1234

// Hiện giá trị và kiểu của biến
fmt.Printf("The value of geek1 is : %d\n", geek1) 
fmt.Printf("The type of geek1 is : %T\n", geek1) 

fmt.Printf("\nThe value of geek2 is : %d\n", geek2) 
fmt.Printf("The type of geek2 is : %T\n", geek2) 

fmt.Printf("\nThe value of geek3 is : %d\n", geek3) 
fmt.Printf("The type of geek3 is : %T\n", geek3)

fmt.Printf("\nThe value of geek4 is : %s\n", geek4) 
fmt.Printf("The type of geek4 is : %T\n", geek4)


fmt.Printf("\nThe value of geek5 is : %f\n", geek5) 
fmt.Printf("The type of geek5 is : %T\n", geek5)

fmt.Printf("\nThe value of geek6 is : %d\n", geek6) 
fmt.Printf("The type of geek6 is : %T\n", geek6)

} 

Sonuç:

The value of geek1 is : 117
The type of geek1 is : int

The value of geek2 is : 7834
The type of geek2 is : int

The value of geek3 is : 5685
The type of geek3 is : int

The value of geek4 is : GFG
The type of geek4 is : string

The value of geek5 is : 859.240000
The type of geek5 is : float64

The value of geek6 is : 1234
The type of geek6 is : int

Hatırlanması gereken önemli noktalar:

:=Kısa bildirim operatörü, operatörün sol tarafındaki değişkenlerden en az birinin yeni olarak bildirilmesi durumunda kullanılabilir . Kısa değişken bildirim operatörü, aynı sözcük bloğu içerisinde bildirilen değişkenlere atama gibi çalışır. Bu kavramı daha iyi anlamak için bir örnek ele alalım.

Örnek 1: Aşağıdaki program, operatörünün sol tarafında yeni bir değişken olmadığından hata verecektir :=.

// Minh họa chương trình Go dùng khai báo biến ngắn
package main

import "fmt"

func main() { 

	// lấy hai biến
	p, q := 100, 200

	fmt.Println("Value of p ", p, "Value of q ", q)

	// Báo lỗi vì không có biến mới ở bên tay trái của :=
	p, q := 500, 600
	
	fmt.Println("Value of p ", p, "Value of q ", q)
}

Hata:

./prog.go:17:10: no new variables on left side of := 

Örnek 2:

Aşağıdaki programda geek3, geek2 := 456, 200 satırını görebilirsiniz, herhangi bir hata olmadan çalışacaktır çünkü operatörün sol tarafında en azından bir yeni değişken (geek3) bulunmaktadır :=.

// Chương trình Go dùng toán tử khai báo biến ngắn
package main 

import "fmt"

func main() { 

// Ở đây, khai báo biến ngắn hoạt động
// như một phép gán cho biến geek1
// vì cùng một biến có trong cùng một khối
// do đó giá trị của geek2 được thay đổi từ 100 thành 200
geek1, geek2 := 78, 100

// ở đây, := được sử dụng như một phép gán cho geek2
// vì nó đã được khai báo. Ngoài ra, dòng này
// sẽ hoạt động tốt vì geek3 mới được tạo
// biến
geek3, geek2 := 456, 200

// Nếu bạn thử chạy các dòng được chú thích,
// thì trình biên dịch sẽ báo lỗi vì
// các biến này đã được định nghĩa
// geek1, geek2 := 745, 956
// geek3 := 150

// Hiện giá trị của các biến
fmt.Printf("The value of geek1 and geek2 is : %d %d\n", geek1, geek2) 
											
fmt.Printf("The value of geek3 and geek2 is : %d %d\n", geek3, geek2) 
} 

Sonuç:

The value of geek1 and geek2 is : 78 200
The value of geek3 and geek2 is : 456 200

Go, tanımlanmış bir değişkene farklı bir veri türünden değer atayamayacağınız için güçlü tipli bir dildir.

Örneğin:

// Minh họa chương trình Go dùng toán tử khai báo biến ngắn
package main 

import "fmt"

func main() { 

	// lấy một biến của int
	z := 50
	
	fmt.Printf("Value of z is %d", z)
	
	// gán lại giá trị của kiểu chuỗi
// nó sẽ đưa ra lỗi
	z := "Golang"
} 

Hata:

./prog.go:16:4: no new variables on left side of := 
./prog.go:16:7: cannot use “Golang” (type string) as type int in assignment 
 

Golang, kısa bir değişken bildiriminde, birden fazla değer döndüren bir fonksiyon çağrısı kullanarak bir dizi değişkenin başlatılmasına izin verir. Veya değişkenlere çalışma zamanında değerlendirilen değerler de atanabilir diyebilirsiniz.

Örneğin:

// Tại đây, hàm math.Max function trả về
// số lớn nhất trong biến i 
i := math.Max(x, y)

Yerel değişken veya global değişken

Kısa değişken bildirim operatörü (:=) yardımıyla, kapsamı yalnızca blok düzeyinde olan yerel değişkenler bildirebilirsiniz. Genellikle yerel değişkenler fonksiyon bloğunun içerisinde tanımlanır. Kısa bildirim operatörünü kullanarak global değişkenleri bildirmeye çalışırsanız bir hata alırsınız.

Örnek 1:

// Chương trình Go hiển thị cách sử dụng toán tử :=
// để khai báo các biến cục bộ
package main

import "fmt"

// sử dụng từ khóa var để khai báo
// và khởi tạo biến
// đó là package hoặc bạn có thể nói
// phạm vi cấp toàn cục
var geek1 = 900

// sử dụng khai báo biến ngắn
// sẽ báo lỗi
geek2 := 200

func main() {

// truy cập geek1 bên trong hàm
fmt.Println(geek1)

// truy cập geek2 bên trong hàm
fmt.Println(geek2)

}

Hata:

./prog.go:15:1: syntax error: non-declaration statement outside function body 

Örnek 2:

// Chương trình Go dùng toán tử := operator
// để khai báo các biến cục bộ
package main 

import "fmt"

// dùng từ khóa var để khai báo
// và khởi tạo biến
// nó đóng gói hoặc bạn có thể báo
// phạm vi cấp toàn cục
var geek1 = 900


func main() { 

// dùng khai báo biến ngắn
// bên trong hàm chính
// nó có phạm vi cục bộ tức là không thể
// truy cập bên ngoài hàm chính
geek2 := 200

// truy cập geek1 bên trong hàm này
fmt.Println(geek1) 

// truy cập geek2 bên trong hàm này
fmt.Println(geek2) 
	
} 

Sonuç:

900
200
Sign up and earn $1000 a day ⋙

Leave a Comment

Normal TV ile Akıllı TV arasındaki fark

Normal TV ile Akıllı TV arasındaki fark

Akıllı televizyonlar gerçekten dünyayı kasıp kavurdu. Teknolojinin sunduğu pek çok harika özellik ve internet bağlantısı, televizyon izleme şeklimizi değiştirdi.

Dondurucuda ışık yokken buzdolabında neden ışık var?

Dondurucuda ışık yokken buzdolabında neden ışık var?

Buzdolapları evlerde sıkça kullanılan cihazlardır. Buzdolapları genellikle 2 bölmeden oluşur, soğutucu bölme geniştir ve kullanıcı her açtığında otomatik olarak yanan bir ışığa sahiptir, dondurucu bölme ise dardır ve hiç ışığı yoktur.

Wi-Fiyi Yavaşlatan Ağ Tıkanıklığını Gidermenin 2 Yolu

Wi-Fiyi Yavaşlatan Ağ Tıkanıklığını Gidermenin 2 Yolu

Wi-Fi ağları, yönlendiriciler, bant genişliği ve parazitlerin yanı sıra birçok faktörden etkilenir; ancak ağınızı güçlendirmenin bazı akıllı yolları vardır.

Tenorshare Reiboot Kullanarak Veri Kaybı Olmadan iOS 17den iOS 16ya Nasıl Geri Dönülür

Tenorshare Reiboot Kullanarak Veri Kaybı Olmadan iOS 17den iOS 16ya Nasıl Geri Dönülür

Telefonunuzda kararlı iOS 16'ya geri dönmek istiyorsanız, iOS 17'yi kaldırma ve iOS 17'den 16'ya geri dönme konusunda temel kılavuzu burada bulabilirsiniz.

Her gün yoğurt yediğinizde vücudunuzda neler olur?

Her gün yoğurt yediğinizde vücudunuzda neler olur?

Yoğurt harika bir besindir. Her gün yoğurt yemek faydalı mıdır? Her gün yoğurt yediğinizde vücudunuzda nasıl değişiklikler olur? Hadi birlikte öğrenelim!

Hangi pirinç türü sağlık açısından daha iyidir?

Hangi pirinç türü sağlık açısından daha iyidir?

Bu yazıda en besleyici pirinç türleri ve seçtiğiniz pirincin sağlık yararlarından nasıl en iyi şekilde yararlanabileceğiniz ele alınıyor.

Sabahları zamanında nasıl uyanılır

Sabahları zamanında nasıl uyanılır

Uyku düzeninizi ve uyku vakti rutininizi oluşturmak, çalar saatinizi değiştirmek ve beslenmenizi buna göre ayarlamak, daha iyi uyumanıza ve sabahları zamanında uyanmanıza yardımcı olabilecek önlemlerden birkaçıdır.

Rent Please! oynamak için ipuçları Yeni Başlayanlar İçin Ev Sahibi Simülasyonu

Rent Please! oynamak için ipuçları Yeni Başlayanlar İçin Ev Sahibi Simülasyonu

Kiralayın Lütfen! Landlord Sim, iOS ve Android'de oynanabilen bir simülasyon mobil oyunudur. Bir apartman kompleksinin ev sahibi olarak oynayacak ve dairenizin içini iyileştirme ve kiracılar için hazır hale getirme amacıyla bir daireyi kiralamaya başlayacaksınız.

En Son Banyo Kule Savunma Kodları ve Kodların Nasıl Girileceği

En Son Banyo Kule Savunma Kodları ve Kodların Nasıl Girileceği

Bathroom Tower Defense Roblox oyun kodunu alın ve heyecan verici ödüller için kullanın. Daha yüksek hasara sahip kuleleri yükseltmenize veya kilidini açmanıza yardımcı olacaklar.

Transformatörlerin yapısı, sembolleri ve çalışma prensipleri

Transformatörlerin yapısı, sembolleri ve çalışma prensipleri

Transformatörlerin yapısını, sembollerini ve çalışma prensiplerini en doğru şekilde öğrenelim.

Yapay Zekanın Akıllı TVleri Daha İyi Hale Getirmesinin 4 Yolu

Yapay Zekanın Akıllı TVleri Daha İyi Hale Getirmesinin 4 Yolu

Daha iyi görüntü ve ses kalitesinden ses kontrolüne ve daha fazlasına kadar, bu yapay zeka destekli özellikler akıllı televizyonları çok daha iyi hale getiriyor!

ChatGPT neden DeepSeekten daha iyidir

ChatGPT neden DeepSeekten daha iyidir

Başlangıçta DeepSeek'e yönelik büyük umutlar vardı. ChatGPT'ye güçlü bir rakip olarak pazarlanan bir yapay zeka sohbet robotu olarak, akıllı sohbet yetenekleri ve deneyimleri vadediyor.

Fireflies.ai ile tanışın: Size Saatlerce Çalışma Kazandıran Ücretsiz AI Sekreteri

Fireflies.ai ile tanışın: Size Saatlerce Çalışma Kazandıran Ücretsiz AI Sekreteri

Önemli ayrıntıları not alırken gözden kaçırmak kolaydır ve sohbet ederken not almaya çalışmak dikkat dağıtıcı olabilir. Çözüm Fireflies.ai'dır.

Axolotl Minecraft nasıl yetiştirilir, Minecraft Salamander nasıl evcilleştirilir

Axolotl Minecraft nasıl yetiştirilir, Minecraft Salamander nasıl evcilleştirilir

Axolot Minecraft, oyuncuların su altında görev yaparken nasıl kullanacaklarını bilmeleri durumunda harika bir yardımcı olacaktır.

Sessiz Bir Yer: Önümüzdeki Yol PC Oyun Yapılandırması

Sessiz Bir Yer: Önümüzdeki Yol PC Oyun Yapılandırması

A Quiet Place: The Road Ahead'in yapılandırması oldukça yüksek olarak derecelendirilmiştir, bu yüzden indirmeye karar vermeden önce yapılandırmayı göz önünde bulundurmanız gerekecektir.