Heim >Backend-Entwicklung >Golang >Was sind Variablen in der Go-Sprache?
In der Go-Sprache ist eine Variable eine Menge, deren Inhalt sich während der Ausführung des Programms ändern (modifizieren) kann. Eine Variable ist die Grundeinheit des Programms und stellt einen Datenspeicherplatz im Speicher dar. Der Variablenwert kann sein über den Variablennamen gefunden. Die Funktion von Variablen besteht darin, Benutzerdaten zu speichern. Es handelt sich um ein abstraktes Konzept in der Computersprache, das Berechnungsergebnisse speichern oder Werte darstellen kann.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, GO Version 1.18, Dell G3-Computer.
1. Übersicht
Eine Variable (Variable) ist der Betrag, den sich der Inhalt während der Ausführung des Programms ändern (modifizieren) kann; eine Variable ist die Grundeinheit des Programms und eine Darstellung eines Datenspeichers Platz im Speicher kann übergeben werden. Variablenname findet Variablenwert.
Die Funktion von Variablen besteht darin, Benutzerdaten zu speichern. Es handelt sich um ein abstraktes Konzept in der Computersprache, das Berechnungsergebnisse speichern oder Werte darstellen kann.
Variable ist der Prozess des Auffindens des Werts anhand der Kennung der Variablen. Demonstration der Speichersimulation von Variablen:
2. Definition: Deklaration und Initialisierung
Um eine Variable zu definieren, verwenden Sie das Schlüsselwort var, und Sie müssen ihren Typ angeben, der gleichzeitig initialisiert werden kann . Wenn kein Initialisierungswert angegeben ist, verwenden Sie den Typ. Die Syntax lautet wie folgt:
// 声明变量,未初始化(默认值初始化)
var name string
// 声明变量,特定值初始化
var user string = "Hank"
Variablen in der Go-Sprache müssen deklariert werden, bevor sie verwendet werden können, und undefinierte Variablen können nicht direkt verwendet werden.
3. Typ-Standardwert (Nullwert)
Der Typ-Standardwert der Go-Sprache ist wie folgt: Der Standardwert von Ganzzahl- und Gleitkommavariablen ist 0. Der Standardwert einer String-Variablen ist der leere String. Boolesche Variablen sind standardmäßig bool. Der Standardwert für Slices, Funktionen und Zeigervariablen ist Null.
4. Starke Typisierung
Die Go-Sprache ist eine stark typisierte Sprache, Variablen müssen Typen haben und Variablen können nur bestimmte Datentypen speichern. [Verwandte Empfehlungen: Go-Video-Tutorial]
5. Typableitung
Wenn beim Definieren einer Variablen ein Anfangswert angegeben wird, kann die Typdefinition weggelassen werden und die Go-Sprache kann den Typ daraus ableiten die Daten selbst. Die Syntax lautet:
// 声明变量,特定值初始化,类型推导出user为字符串string型
var user = "Hank"
6. Kurze Deklaration (Definition)
Um die Definition von Variablen zu vereinfachen, verwenden Sie den Operator := mit Typableitung, um die Definition von Variablen schnell abzuschließen :
user := "hank"
7. Verwenden Sie var oder :=, um mehrere Variablen gleichzeitig zu definieren. Die Syntax lautet: var
var ( v1 = 42 v2 = "hank" ) 也可以 var v1, v2 = 42, "hank"
:=
var
v1, v2 := 42, "hank"
:=
var ( v1 int v2 int ) // 批量赋值 v1, v2 = 42, 1024
8. StapelzuweisungWeisen Sie mehreren Variablen gleichzeitig Werte zu. (Ähnlich wie bei der Kurzdefinition. v1, v2, v3 := 42, „hank“, false) Weisen Sie ihnen nach der Definition stapelweise Werte zu. Es gibt keine Definitionsfunktion! Die Syntax lautet:
func main() { var ( v1 int v2 int ) // 调用函数,接收其返回值 v1, v2 = getData() } // 返回两个值的函数 func getData() (int, int) { // 返回了两个值(假设42为最小值,1024为最大值) return 42, 1024 }
var ( v1 = 42 v2 = 1024 ) // 交换 v1, v2 = v2, v1
func main() { var ( v int ) // 调用函数,仅仅需要第二个返回值,第一,三使用匿名变量占位 _, v, _ = getData() } // 返回两个值的函数 func getData() (int, int, int) { // 返回3个值 return 42, 1024, 2012 }
9, anonyme Variablen Variablen mit der Kennung _ (Unterstrich) sind anonyme Variablen, die vom System reserviert sind. Nach der Zuweisung werden sie sofort freigegeben und als anonyme Variable bezeichnet. Seine Funktion ist ein Variablenplatzhalter, der seiner Variablen eine Wertestruktur zuweist. Wird normalerweise bei der Stapelzuweisung verwendet. Wenn eine Funktion beispielsweise mehrere Werte zurückgibt und wir nur einige davon benötigen, verwenden Sie _, um den Platz zu belegen, wenn dieser nicht benötigt wird:
// 全局(函数外)定义3个变量 var ( v1 = 1 v2 = 2 v3 = 3 ) func main() { // main{}函数块,定义2个变量 var ( v2 = 22 v3 = 33 ) fmt.Println(v1, v2, v3) // 结果 1 22 33 { // main()函数内部{}块,定义1个变量 var ( v3 = 333 ) fmt.Println(v1, v2, v3) // 结果 1 22 333 } }
Variablen im Go-Sprache ist eine Blockfunktionsdomäne. Blöcke beziehen sich auf Codesegmente, die mit {} definiert wurden, einschließlich Funktionen, if/switch/for-Anweisungen oder unabhängige {} sind alles Blöcke. Innerhalb eines Blocks definierte Variablen sind nur innerhalb dieses Blocks verfügbar. Definition bezieht sich auf Variablen, die durch var oder := definiert sind. Der Umfang der Go-Sprache ist kaskadierend, was bedeutet, dass der innere Block direkt auf die Variablen des äußeren Blocks zugreifen kann, sofern der innere Block keine äußere Variable mit demselben Namen definiert. Demonstration unten: 上面代码中: 在main()中,v2,v3被重新定义,则在main()中,v1是外部,而v2, v3是main函数局部的。 在main()内部的{}中,v3被重新定义,则在main()内部的{}中,v1是外部,而v2是main()定义的, v3是main()内部{}定义的的。 变量可以沿内部作用域向外部作用域查找变量的过程。 带有{}的语句,其中的变量也仅仅在内部有效,例如for,if,switch等,演示: 注意i,是通过短声明在for内部定义的变量,仅仅在for内部有意义。 互不嵌套的{}见作用域不可见,不可互相访问。 更多编程相关知识,请访问:编程教学!!for i := 0; i < 10; i++ {
fmt.Println(i)
}
fmt.Println(i)
// 会提示变量i未定义, undefined: i
for i := 0; i < 10; i++ {
fmt.Println(i)
}
fmt.Println(i)
// 会提示变量i未定义, undefined: i
func main() {
{
v := 42
}
{
fmt.Println(v)
// 会提示变量v未定义, undefined: v
}
}
Das obige ist der detaillierte Inhalt vonWas sind Variablen in der Go-Sprache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!