这篇文章跟大家探讨一下slice在Go中的使用,一起看看下面这段程序
package mainimport (
"fmt"
)func main() {
var array [10]int
var slice = array[5:6]
fmt.Println("lenth of slice: ", len(slice))
fmt.Println("capacity of slice: ", cap(slice))
fmt.Println(&slice[0] == &array[5])}
接下来大家看看这段程序,试着自己跑一下程序,动手实践是最好的老师
package mainimport (
"fmt")func AddElement(slice []int, e int) []int {
return append(slice, e)
}func main() {
var slice []int
slice = append(slice, 1, 2, 3)
newSlice := AddElement(slice, 4)
fmt.Println(&slice[0] == &newSlice[0])}
接着往下继续看这段程序会怎样输出,可以思考一下或者跑跑程序:
package mainimport (
"fmt")func main() {
orderLen := 5
order := make([]uint16, 2 * orderLen)
pollorder := order[:orderLen:orderLen]
lockorder := order[orderLen:][:orderLen:orderLen]
fmt.Println("len(pollorder) = ", len(pollorder))
fmt.Println("cap(pollorder) = ", cap(pollorder))
fmt.Println("len(lockorder) = ", len(lockorder))
fmt.Println("cap(lockorder) = ", cap(lockorder))}
跑完上面的程序后带着疑问接着往下看会更好,整个人有一种豁然开朗的感觉,不信可以试试:
这篇文章对Slice的一些使用讲解就在这里了,希望帮到有需要的伙伴吧,更多关于Slice的使用欢迎留言告知探讨
以上就是分享go中关于Slice的使用注意事项的详细内容,更多请关注php中文网其它相关文章!
声明:本文转载于:learnku,如有侵犯,请联系admin@php.cn删除
程序员必备接口测试调试工具:点击使用
Apipost = Postman + Swagger + Mock + Jmeter
Api设计、调试、文档、自动化测试工具
网页生成APP,用做网站的技术去做APP:立即创建
手机网站开发APP、自助封装APP、200+原生模块、2000+映射JS接口按需打包
相关文章
相关视频