首页 > 其他 > 详细

A Tour of Go: Basics 3

时间:2018-10-08 00:33:12      阅读:197      评论:0      收藏:0      [点我收藏+]
Struct

用指针和用变量名引用struct里的值,用法是一样的。
Struct初始化语法:

type Vertex struct {
    X, Y int
}
var (
    v1 = Vertex{1, 2}  // has type Vertex
    v2 = Vertex{X: 1}  // Y:0 is implicit
    v3 = Vertex{}        // X:0 and Y:0
    p  = &Vertex{1, 2} // has type *Vertex
)

Array

数据长度是固定的,在定义时指定。

Slices

Slices的概念与Python中的概念类似,是Array的子集。
slice只是数组的引用,因此修改slice值就是修改数组里的值。
[]int{1,2,3}语法含义是先定义一个数组,再创建一个slice引用这个数组。
两个容量:

  • length:当前slice的元素个数。len(s)
  • capacity:当前slice从最左边元素开始,对应在数组里直到最后一个元素的个数。cap(s)

特殊情况:
slice的0值是nil,对应的length和capacity都是0,没有对应的数组。

a := make([]int, 0, 5) 创建一个0值数组,然后返回一个slice。

slices of slices

append function

A Tour of Go: Basics 3

原文:http://blog.51cto.com/zxdlife/2294345

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!