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

虚拟主机做多个网站wordpress跟新到5.0.1是英文

虚拟主机做多个网站,wordpress跟新到5.0.1是英文,专业网站建设商城价格,东莞网络推广培训班数组就是一篇连续的内存#xff0c;几乎所有的计算机语言都有数组#xff0c;只不过 Go 语言里面的数组其实并不常用#xff0c;这是因为数组是定长的静态的#xff0c;一旦定义好长度就无法更改#xff0c;而且不同长度的数组属于不同的类型#xff0c;之间不能相互转换…数组就是一篇连续的内存几乎所有的计算机语言都有数组只不过 Go 语言里面的数组其实并不常用这是因为数组是定长的静态的一旦定义好长度就无法更改而且不同长度的数组属于不同的类型之间不能相互转换相互赋值用起来多有不方便之处。切片是动态的数组是可以扩充内容增加长度的数组。当长度不变时它用起来就和普通数组一样。当长度不同时它们也属于相同的类型之间可以相互赋值。切片的便捷性让数组的绝大多数应用领域都广泛地被取代了。不过也不可以小瞧数组在切片的底层实现中数组是切片的基石是切片的特殊语法隐藏了内部的细节让用户不能直接看到内部隐藏的数组。切片不过是数组的一个包装给顽固的数组装上了灵活的翅膀让石头也可以展翅飞翔。仅仅是上面纯文字的说明读者肯定会感觉很懵。下面让我们来看具体的实例。数组变量的定义我们先试一下只申明类型不赋初值。这时编译器会给数组默认赋上「零值」。数组的零值就是所有内部元素的零值。package mainimport fmtfunc main() {var a [9]intfmt.Println(a)}------------[0 0 0 0 0 0 0 0 0]复制代码下面我们看看另外三种变量定义的形式 效果都是一样的package mainimport fmtfunc main() {var a [9]int{1, 2, 3, 4, 5, 6, 7, 8, 9}var b [10]int [10]int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}c : [8]int{1, 2, 3, 4, 5, 6, 7, 8}fmt.Println(a)fmt.Println(b)fmt.Println(c)}---------------------[1 2 3 4 5 6 7 8 9][1 2 3 4 5 6 7 8 9 10][1 2 3 4 5 6 7 8]复制代码数组的访问接下来我们使用下标来简单操作一下数组这个数组里存的是数字的平方值package mainimport fmtfunc main() {var squares [9]intfor i : 0; i len(squares); i {squares[i] (i 1) * (i 1)}fmt.Println(squares)}--------------------[1 4 9 16 25 36 49 64 81]复制代码数组的下标越界检查(高阶知识)上面的代码中我们注意到可以使用内置函数 len() 来直接获取数组的长度。数组的长度是编译期确定的当我们使用 len() 函数访问数组的长度属性时编译器在背后偷偷把它替换成了整数值。package mainimport fmtfunc main() {var a [5]int{1,2,3,4,5}a[101] 255fmt.Println(a)}-----./main.go:7:3: invalid array index 101 (out of bounds for 5-element array)复制代码上面的代码运行结果说明了 Go 语言会对数组访问下标越界进行编译器检查。有一个重要的问题是如果下标是一个变量Go 是如何检查下标越界呢变量需要在运行时才可以决定是否越界Go 是如何办到的呢package mainimport fmtfunc main() {var a [5]int{1,2,3,4,5}var b 101a[b] 255fmt.Println(a)}------------panic: runtime error: index out of rangegoroutine 1 [running]:main.main()/Users/qianwp/go/src/github.com/pyloque/practice/main.go:8 0x3dexit status 2复制代码答案是 Go 会在编译后的代码中插入下标越界检查的逻辑所以数组的下标访问效率是要打折扣的比不得 C 语言的数组访问性能。数组赋值同样的子元素类型并且是同样长度的数组才可以相互赋值否则就是不同的数组类型不能赋值。数组的赋值本质上是一种浅拷贝操作赋值的两个数组变量的值不会共享。package mainimport fmtfunc main() {var a [9]int{1, 2, 3, 4, 5, 6, 7, 8, 9}var b [9]intb aa[0] 12345fmt.Println(a)fmt.Println(b)}--------------------------[12345 2 3 4 5 6 7 8 9][1 2 3 4 5 6 7 8 9]复制代码从上面代码的运行结果中可以看出赋值后两个数组并没有共享内部元素。如果数组的长度很大那么拷贝操作是有一定的开销的使用的时候一定需要注意。下面我们尝试使用不同长度的数组赋值会有什么结果package mainimport fmtfunc main() {var a [9]int{1, 2, 3, 4, 5, 6, 7, 8, 9}var b [10]intb afmt.Println(b)}--------------------------./main.go:8:4: cannot use a (type [9]int) as type [10]int in assignment复制代码可以看出不同长度的数组之间赋值是禁止的因为它们属于不同的类型。数组的遍历数组除了可以使用下标进行遍历之外还可以使用 range 关键字来遍历range 遍历提供了下面两种形式。package mainimport fmtfunc main() {var a [5]int{1,2,3,4,5}for index : range a { fmt.Println(index, a[index]) } for index, value : range a {fmt.Println(index, value)}}------------0 11 22 33 44 50 11 22 33 44 5复制代码考虑到切片的内容太多我们将独立一节专门讲解切片下一节将是 Go 语言的极有价值的一节读者一定要努力搞清楚每一个细节。
http://wiki.neutronadmin.com/news/316000/

相关文章:

  • 网站信息查询北京房产网官网
  • 网站运营适合什么样的人做微官网 手机网站
  • 织梦网站地图制作好看的模板
  • 江苏华江建设集团有限公司网站南京网站制作费用
  • 保定市制作网站公司软件工程专业招聘网站
  • 网站两个域名简单广告设计软件
  • 站群cms系统区块链
  • 网站公司注册流程淘宝客网站源码html
  • 网站开发需求文件进口网站建设
  • 浙江网站建设抖音seo优化建材网站建设 南宁
  • 一个空间只能放一个网站吗福田住房和建设局网站官网
  • 滁州新手跨境电商建站哪家好wordpress评论头像
  • 求好的设计网站福州网站开发风格
  • 新闻宣传培训网站内容建设网站建设需要的资料
  • 网站建设需不需要编程江苏建设教育协会网站
  • 南海做网站公司网站开发合同注意事项
  • 网站的技术支持汶上手机网站建设
  • 网站建设什么行业天津购物网站搭建
  • 上高做网站公司做配单ic去什么网站好
  • 做网站用百度地图和天地图东莞百域网站建设公司
  • 《网站平台建设》课程实训wordpress无法连接数据库连接
  • 网页版微信二维码登录方法做优化的网站
  • 购买网站模板盘锦兴隆台住房和城乡建设网站
  • 多平台网站设计实例电子商务网站建设功能
  • 网站建设朋友圈广告桥头镇网站仿做
  • 学网站开发的能找什么工作WordPress如何恢复最初
  • 站长之家网站建设酒店找人做网站
  • 用wordpress做淘宝客应用商店关键词优化
  • 天津微网站建设seo软件哪个好
  • 成都网站建设网络公司php网站后台密码忘记了怎么办