GO--学习手记

1、数组和切片密不可分。如果将 数组 理解为一栋办公楼,那么 切片 就是把不同的连续楼层出租给使用者,出租的过程需要选择开始楼层和结束楼层,这个过程就会生成切片。示例代码如下:

var highRiseBuilding [30]int
for i := 0; i < 30; i++ {
        highRiseBuilding[i] = i + 1
}
// 区间:从下标10到下标15
fmt.Println(highRiseBuilding[10:15])
// 从下标20到尾部的所有元素
fmt.Println(highRiseBuilding[20:])
// 开头到下标为2的所有元素
fmt.Println(highRiseBuilding[:2])

代码输出如下:

[11 12 13 14 15]
[21 22 23 24 25 26 27 28 29 30]
[1 2]

2、使用 make() 函数生成的切片一定发生了内存分配操作,但给定开始与结束位置(包括切片复位)的切片只是将新的切片结构指向已经分配好的内存区域,设定开始与结束位置,不会发生内存分配操作。

3、Go语言中的循环语句只支持 for 关键字,而不支持 while 和 do-while 结构。无限循环写法如下:

for {
    sum++
    if sum > 100 {
        break
    }
}

你可能感兴趣的:(go)