当前位置: 首页 > wzjs >正文

成都市微信网站建辽源商城网站建设

成都市微信网站建,辽源商城网站建设,灵芝住房和城乡建设局局网站,wix和wordpress比较文章目录 数组的基本特性数组的声明和初始化数组元素的访问和操作数组遍历多维数组数组的长度和容量数组作为函数参数数组与切片的区别注意 数组是Go语言中最基本的数据结构之一,它是一组相同类型元素的固定长度序列。 数组的基本特性 1、固定长度:数组…

文章目录

  • 数组的基本特性
  • 数组的声明和初始化
  • 数组元素的访问和操作
  • 数组遍历
  • 多维数组
  • 数组的长度和容量
  • 数组作为函数参数
  • 数组与切片的区别
  • 注意

数组是Go语言中最基本的数据结构之一,它是一组相同类型元素的固定长度序列。

数组的基本特性

1、固定长度:数组的长度在声明时确定,不可改变。

2、相同类型:所有元素必须是同一类型。

3、连续内存:元素在内存中是连续存储的。

4、值类型:数组是值类型,赋值或传参会复制整个数组。

数组的声明和初始化

// 声明一个包含5个int的数组,初始化为零值
// 零值初始化
var a [5]int//  字面量初始化
var b = [3]int{1, 2, 3}
c := [4]string{"a", "b", "c", "d"}// 使用...让编译器计算数组长度 长度为5
// 索引初始化
e := [...]int{1, 2, 3, 4, 5}// 指定索引位置初始化,未指定的为零值
// 自动长度推断初始化
d := [5]int{1: 10, 3: 30}
// 结果为 [0, 10, 0, 30, 0]

数组元素的访问和操作

arr := [3]int{10, 20, 30}// 通过索引访问
first := arr[0]  // 10
second := arr[1] // 20// 修改元素
arr[2] = 40

数组遍历

方法1:
使用for循环索引遍历

// 使用for循环
for i := 0; i < len(arr); i++ {fmt.Println(arr[i])
}

方法2:
使用range关键字遍历

arr := [5]string{"Apple", "Banana", "Orange", "Grape", "Pear"}// range遍历,获取索引和值
for index, value := range arr {fmt.Printf("索引:%d 值:%s\n", index, value)
}// 只需要值时
for _, value := range arr {fmt.Println("值:", value)
}// 只需要索引时
for index := range arr {fmt.Println("索引:", index)
}

多维数组

二维数组的声明和初始化:

// 声明二维数组
var matrix [3][3]int// 初始化二维数组
matrix = [3][3]int{{1, 2, 3},{4, 5, 6},{7, 8, 9},
}// 访问元素
val := matrix[1][2] // 6

数组的长度和容量

数组的长度是固定的,可以使用内置函数len()获取:

arr := [5]int{1, 2, 3, 4, 5}
length := len(arr) // 5

数组作为函数参数

数组是值类型,作为函数参数时会复制整个数组:

func modifyArray(arr [3]int) {arr[0] = 100
}func main() {a := [3]int{1, 2, 3}modifyArray(a)fmt.Println(a) // 输出 [1 2 3],原数组未改变
}

如果需要修改原数组,可以使用指针:

func modifyArray(arr *[3]int) {arr[0] = 100
}func main() {a := [3]int{1, 2, 3}modifyArray(&a)fmt.Println(a) // 输出 [100 2 3]
}

数组与切片的区别

特性数组切片
长度固定动态可变
类型值类型引用类型
声明方式[n]T[]T
内存分配栈或静态存储区
传递效率低(复制整个数组)高(只复制切片头)
大小编译时确定运行时动态变化

注意

1、长度固定,无法动态扩展。

2、作为值类型传递时会有性能开销(特别是大数组)。

3、缺乏灵活性。

http://www.dtcms.com/wzjs/807230.html

相关文章:

  • 微网站建设86215网站建设运营协议书
  • 如何做网站推广下拉刘贺稳14湘潭新思维网站
  • 网站建设业务员怎么做中国黄页企业名录
  • 公司让我做网站负责人广州市司法职业学校
  • 模版营销型网站怎么做网站建设公司落寞
  • 北京网站设计培训班新闻资讯建站服务商
  • 深圳建网站兴田德润实惠珠海网站建设优化
  • 建设网站用什么时候开始易企秀可以做微网站吗
  • 广东网站建设微信官网开发包工头接活平台小工程
  • 怎么为网站做外链企业注册网上申请入口
  • 福州网站排名推广wordpress 关闭某个插件的更新
  • 深圳制作手机网站企业网站硬件建设方案
  • 做网站二级页面的那家网站建设公司好
  • 网站管理员的联系方式企业展厅方案设计公司
  • 企业网站源码带手机版wordpress 替换图标
  • 网站建站解决方案大型网站开发人员
  • 做一个企业的官网可以做静态网站手机网站制作哪家公司好
  • 代理平台有哪些百度快速优化软件排名
  • 邮箱登录宁波seo外包sem
  • .耐思尼克官方网站建立网站的流程是什么
  • 嘉禾手机网站建设建筑模板尺寸
  • 衡水网站建设一级做ae视频片段怎么做
  • 建站神器跟wordpress哪个好排名好的网站开发
  • 网站建设与研发外贸公司网站建站
  • 做网站怎样连数据库ui设计分为哪几类
  • 彩票网站自己可以做吗asp 企业网站
  • 网站建设中项目经理的职责中山做网站好的公司
  • php网站权限设置云梦县建设安全网站
  • 动漫网站怎么建设重庆市
  • 网站建设与管理实施方案wordpress rest post