Example 1: golang array syntax
var arr1 [3]int
arr2 := [2]string{"Hello", "World"}
arr3 := [...]int{12, 13, 14, 15, 16}
arr4 := [5][2]int{{0, 0}, {1, 2}, {2, 4}, {3, 6}, {4, 8}}
var arr5 [4][3]int
arr5[0] = [3]int{1, 2, 3}
arr5[1] = [3]int{4, 5, 6}
arr5[2] = [3]int{7, 8, 9}
fmt.Println(arr1, arr2, arr3, arr4, arr5)
Example 2: golang radom array
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().Unix())
fmt.Println(rand.Perm(10))
fmt.Println(rand.Perm(10))
}
Example 3: golang array
package main
import (
"fmt"
)
func main() {
arrayNotMax := [...]int{1991, 1992, 1993, 1994, 1995}
var arrayMax [3]int
arrayMax[0] = 1990
arrayMax[1] = 1991
arrayMax[2] = 1992
var arrayWithMake = make([]string, 3)
arrayWithMake[0] = "zero"
arrayWithMake[1] = "one"
arrayWithMake[2] = "two"
var arrayMultiDimension = [2][5]int{{1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}}
fmt.Printf("read arrayNotMax value %#v \n", arrayNotMax)
fmt.Printf("read arrayMax value %#v \n", arrayMax)
fmt.Printf("read arrayWithMake value %#v \n", arrayWithMake)
fmt.Println("read length of array", len(arrayNotMax))
fmt.Println("read capacity of array", cap(arrayNotMax))
fmt.Println("read arrayMultiDimension value", arrayMultiDimension)
}
Example 4: go copy to array
b = make([]int, len(a))
copy(b, a)
b = append([]int(nil), a...)