Golang variables: Difference between revisions

From wikinotes
Line 53: Line 53:
</blockquote><!-- Immutable -->
</blockquote><!-- Immutable -->
</blockquote><!-- Mutability -->
</blockquote><!-- Mutability -->
= Scope =
<blockquote>
</blockquote><!-- Scope -->

Revision as of 18:02, 29 May 2022

Assignment

// declare and assign variable
var name string
name = "foo"

// declare and assign var in one step
var name string = "foo"

// declare and assign variable, inferring type
name := "foo"

Type Conversion

float32(123) == 123.        // cast int as float32
string(107) == "k"          // retrieve char for 107 in ascii chart
strconv.Itoa(107) == "107"  // represent 107 as string

Introspection

fmt.Prinf("%T\n", myVar)   // print type of myVar

Mutability

Mutable

- Arrays
- Maps
- Channels
- Structs

Immutable

- Interfaces
- Booleans
- Numeric Types
- Strings
- Pointers

Scope