毎日1つのGo言語の小文法-GOのデータ構造
14517 ワード
Goのデータ構造配列 slice map
以上、slice以外はよく知られていますが、sliceスライスはダイナミックな配列に詳しいと理解できます.定義された長さの古いルールを使用して直接例を挙げる必要はありません.
はいれつは2つの定義方式を用いることに注意し、一般的に後者の に傾く.ここで注意するのは、未知の長さを設定したい場合result:=[...]int{5,6,7,8}これは をよく使用します.
Sliceここではsliceのいくつかの簡単な使い方を紹介しました pythonスライスのような動作 一般的なappendメソッド追加値
Map
mapはよく知られている検索速度で有名ですが、自分が検索が遅いことに気づいたら、直接mapに行くとその速度は2倍以上になります.
output: map[key1:2 key2:3] map[key1:2 key2:3] key:key2, value:4 key:key3, value:5 5 true map[key2:4]
以上、slice以外はよく知られていますが、sliceスライスはダイナミックな配列に詳しいと理解できます.定義された長さの古いルールを使用して直接例を挙げる必要はありません.
はいれつ
package main
import (
"fmt"
)
func DefineArray(){
//
var x [5] int
x[0] = 1
x[2] = 2
x[3] = 4
fmt.Println(" :", x)
//
result := [...]int{5,6,7,8}
fmt.Println(result)
func main() {
DefineArray()
}
Slice
package main
import (
"fmt"
)
func DefineSlice(){
// slice
var x [] int
// append
result := append(x,2,3,4)
fmt.Println(" slice :", result) //
fmt.Println(" slice :", len(result)) //
fmt.Println(" slice :", cap(result))
// slice
test := [] int {1,2,3,4}
fmt.Println(test)
//
numbers := []int{5,6,7,8}
fmt.Println("numbers[1:4] ==", numbers[1:4])
}
func main() {
)
DefineSlice()
}
numbers := []int{5,6,7,8}
fmt.Println("numbers[1:4] ==", numbers[1:4]) // 1-4
// output:[6 7 8]
var x [] int
// append
result := append(x,2,3,4)
// output:[2 3 4]
Map
mapはよく知られている検索速度で有名ですが、自分が検索が遅いことに気づいたら、直接mapに行くとその速度は2倍以上になります.
package main
import (
"fmt"
)
func DefineMap() {
// map
var x map[string]int
x = make(map[string]int) // map, nil map ,
x ["key1"] = 2
x ["key2"] = 3
fmt.Println(x)
// map
// make(map[key ][ ])
result := make(map[string]int)
result["key2"] = 4
result["key3"] = 5
fmt.Println(x)
// map key
for key, value := range result{
fmt.Printf("key:%v, value:%v
",key,value)
}
//
val, exist := result["key3"] // value key , 0, exist= True key , False
fmt.Println(val, exist)
//
delete(result, "key3")
fmt.Println(result)
}
func main() {
//DefineSlice()
//DefineArray()
//DefineMap()
DefineSlice()
}
output: map[key1:2 key2:3] map[key1:2 key2:3] key:key2, value:4 key:key3, value:5 5 true map[key2:4]