字符串、数组、切片

2019-08-27  本文已影响0人  小船儿飘阿飘

字符串

字符串是一个不可改的字符序列
创建的字符串由两个字构成。指向实际[]byte类型字符串的指针 和 字符串长度,底层结构在reflect.StringHeader中定义:

type StringHeader struct {
    Data uintptr
    Len  int }

对数组内容进行截取例如 s[5:7]时,实际是指针的移动,通过指针确定字符起始,通过长度确定字符终止位置

数组

内置的一组同类型数据集合,初始化时指定其容量大小。
通过从0开始的下标索引访问元素,可根据下标修改元素值
初始化后长度不可改变,它是值类型,作为参数传递时将复制一份数组而不是一个指针,所以复制给其他数组时实际是copy了一份副本过去

切片

切片像一个无限制长度的数组。
不限制长度,追加元素时容量增大
包含len()容量和cap()容量,通过对象方法调用可查看容量大小。
引用类型,传递时将传递指针,改动其一其余都会改变
切片支持通过append追加元素,如果追加的是一组元素,需要加...

上一篇下一篇

猜你喜欢

热点阅读