golang array of arrays code example

Example 1: golang array syntax

var arr1 [3]int                                           //ARRAY syntax#1
	arr2 := [2]string{"Hello", "World"}                       //ARRAY syntax#2 (composite literal)(identifier:= type{values})
	arr3 := [...]int{12, 13, 14, 15, 16}                      //ARRAY syntax#3
	arr4 := [5][2]int{{0, 0}, {1, 2}, {2, 4}, {3, 6}, {4, 8}} //ARRAY syntax#4
	var arr5 [4][3]int					  //ARRAY syntax#4.1
	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() {
    //Provide seed
    rand.Seed(time.Now().Unix())

    //Generate a random array of length n
    fmt.Println(rand.Perm(10))
    fmt.Println(rand.Perm(10))
}

Example 3: golang array

package main

import (
	"fmt"
)

func main() {

	// array with not range maximal capacity
	arrayNotMax := [...]int{1991, 1992, 1993, 1994, 1995}

	// array with range maximal capacity
	var arrayMax [3]int
	arrayMax[0] = 1990
	arrayMax[1] = 1991
	arrayMax[2] = 1992

	// array using make method
	var arrayWithMake = make([]string, 3)
	arrayWithMake[0] = "zero"
	arrayWithMake[1] = "one"
	arrayWithMake[2] = "two"

	// array multi dimension
	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)
// or
b = append([]int(nil), a...)

Tags:

Dart Example