Go by Example ä¸­æ–‡į‰ˆ: 数įģ„

在 Go 中īŧŒæ•°įģ„ æ˜¯ä¸€ä¸Ēå…ˇæœ‰įŧ–åˇä¸”é•ŋåēĻå›ēåŽšįš„å…ƒį´ åēåˆ—。

package main
import "fmt"
func main() {

čŋ™é‡Œæˆ‘äģŦ创åģēäē†ä¸€ä¸Ē刚åĨŊ可äģĨ存攞 5 ä¸Ē int å…ƒį´ įš„æ•°įģ„ a。 å…ƒį´ įš„įąģ型和é•ŋåēĻéƒŊ是数įģ„įąģåž‹įš„ä¸€éƒ¨åˆ†ã€‚ 数įģ„éģ˜čޤå€ŧ是é›ļå€ŧīŧŒå¯šäēŽ int 数į섿Ĩ蝴īŧŒå…ƒį´ įš„é›ļå€ŧ是 0。

    var a [5]int
    fmt.Println("emp:", a)

我äģŦ可äģĨäŊŋᔍ array[index] = value č¯­æŗ•æĨ莞įŊŽæ•°į섿Œ‡åޚäŊįŊŽįš„å€ŧīŧŒ æˆ–č€…į”¨ array[index] 垗到å€ŧ。

    a[4] = 100
    fmt.Println("set:", a)
    fmt.Println("get:", a[4])

内įŊŽå‡Ŋ数 len 可äģĨčŋ”回数įģ„įš„é•ŋåēĻ。

    fmt.Println("len:", len(a))

äŊŋᔍčŋ™ä¸Ēč¯­æŗ•åœ¨ä¸€čĄŒå†…åŖ°æ˜Žåšļ初始化一ä¸Ē数įģ„。

    b := [5]int{1, 2, 3, 4, 5}
    fmt.Println("dcl:", b)

数įģ„įąģ型是一įģ´įš„īŧŒäŊ†æ˜¯äŊ å¯äģĨįģ„合构造多įģ´įš„æ•°æŽį쓿ž„。

    var twoD [2][3]int
    for i := 0; i < 2; i++ {
        for j := 0; j < 3; j++ {
            twoD[i][j] = i + j
        }
    }
    fmt.Println("2d: ", twoD)
}

æŗ¨æ„īŧŒäŊŋᔍ fmt.Println 打印数į섿—ļīŧŒäŧšæŒ‰į…§ [v1 v2 v3 ...] įš„æ ŧåŧæ‰“印。

$ go run arrays.go
emp: [0 0 0 0 0]
set: [0 0 0 0 100]
get: 100
len: 5
dcl: [1 2 3 4 5]
2d:  [[0 1 2] [1 2 3]]

在 Go ፋåēä¸­īŧŒį›¸čžƒäēŽæ•°įģ„īŧŒį”¨åž—æ›´å¤šįš„æ˜¯ _åˆ‡į‰‡(slice)_。我äģŦæŽĨį€æĨįœ‹åˆ‡į‰‡ã€‚

下一ä¸Ē䞋子: åˆ‡į‰‡