34 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			34 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | ||
|  | title: Go Variables | ||
|  | --- | ||
|  | # Variable declarations in Go
 | ||
|  | 
 | ||
|  | ## Method 1: Regular Variable Declarations
 | ||
|  | 
 | ||
|  | A regular variable declaration creates one or more variables by binding identifiers with a type and an initial value. If a variable is declared without a type, then that variable is given the type of the corresponding initialization value in the assignment. If a variable is defined with no initial value, then the variable is initialized to its [zero value](https://golang.org/ref/spec#The_zero_value). | ||
|  | 
 | ||
|  | The following examples are all valid variable declarations in go: | ||
|  | ``` go | ||
|  | var x int = 1 | ||
|  | var y int | ||
|  | var z = 0 | ||
|  | var a, b float32 = -1, -2 | ||
|  | ``` | ||
|  | 
 | ||
|  | ## Method 2: Short Variable Declarations
 | ||
|  | 
 | ||
|  | Shorthand variable declarations create variables with only an identifier and an initial value. The `var` keyword and types are not needed to declare a variable using shorthand syntax: | ||
|  | ``` go | ||
|  | x := 1 | ||
|  | text, err := ioutil.ReadAll(reader) | ||
|  | ``` | ||
|  | 
 | ||
|  | Short variable declarations may appear only inside functions. In some contexts such as the initializers for `if`, `for`, or `switch` statements, they can be used to declare local temporary variables. | ||
|  | 
 | ||
|  | #### More Information:
 | ||
|  | <!-- Please add any articles you think might be helpful to read before writing the article --> | ||
|  | * [A Tour of Go](https://tour.golang.org/basics/8) | ||
|  | * [Go By Example](https://gobyexample.com/variables) | ||
|  | * [Golang Book](https://www.golang-book.com/books/intro/4) | ||
|  | * [The Go Programming Language Specification](https://golang.org/ref/spec#Variable_declarations) |