Go語言學習筆記 陣列的使用

2021-08-05 19:22:57 字數 1727 閱讀 3230

學習筆記根據 無聞

go語言基礎教程 整理

package main

import (

"fmt"

)func main()

func test1()

// 相同長度型別的可賦值

func test2() // 不能這樣用,錯誤的定義和賦值

a := [2]int

var b [2]int

b = a

fmt.println(a) // [1,1]

fmt.println(b) // [1,1]

}// 型別不同,無法賦值

func test3()

b := [2]int{}

// b = a // 錯誤的賦值, 不同型別無法轉換,報錯

fmt.println(a) // [1

2] fmt.println(b) // [00]}

// 使用索引

func test4() // 指定索引為1的值為1,其後一項為2,其餘零值補充

b := [5]int // 指定索引為4的,也就是第五號元素為1,其餘零值補充

fmt.println(a) // [012

00]fmt.println(b) // [000

01]}// 使用...和索引來指定陣列

func test5() // 使用...來定義乙個已知長度的陣列

b := [...]int

fmt.println(a) // [123

45]fmt.println(b) // [1

1122]

}// 指向陣列的指標

func test6()

var p *[3]int = &a // p 是指向陣列的指標

fmt.println(p) // &[123]

}// 指標陣列

func test7()

fmt.println(a) // [0xc0420441d0

0xc0420441d8] // 說明 a 是乙個指標陣列

}// 陣列之間可以使用 == 或者 != 的比較, 但不可以比較大小 ; 比較前提是:長度,型別相同

func test8()

b := [2]int

c := [2]int

fmt.println(a == b) // false

fmt.println(a == c) // true

}// 使用new關鍵字會返回乙個指向陣列的指標

func test9()

// 定義乙個第一維長度為2的,第二維長度為3的 二維陣列

func test10() ,

}fmt.println(a) // [[1

11] [2

22]]

}// 第一維度陣列可以使用...來計算, 注意定義的陣列長度,不能溢位

func test11() ,

}fmt.println(a) // [[123

00] [222

20]]

}// 氣泡排序

func test12()

fmt.println(a)

num := len(a)

for i:=0; i < num; i++ }}

fmt.println(a)

/*[523

14][543

21]*/

}

C語言學習筆記《陣列》

1,已知陣列x有5個元素,精組y有6個元素.請分別對x和y排序。輸出x和y排序後的元素 include main y 6 int i,j,sum 0 for i 0 i 4 i int i,j,sum for i 0 i 9 i for i 0 i 9 i printf d t a i code c...

C語言學習筆記 陣列

陣列是用來儲存乙個固定大小的同型別元素的順序集合。type arrayname arraysize intarray 5 int array intarray 5 include int main int argc,const char argv int i for i 0 i 5 i 多維陣列最簡...

Go語言學習筆記八 陣列

陣列地球人都知道。所以只說說go語言的特殊 奇葩 寫法。我一直在想乙個人參與了兩種語言的設計,但是最後兩種語言的語法差異這麼大。這是自己否定自己麼,為什麼不與之前統一一下。var variable name size variable type例子 var x 10 intvar x 5 int v...