1.数组:同一种数据类型的固定长度的序列。

2.数组定义:var a [len]int,例如:var a [5]int

3.长度是数组类型的一部分,因此,var a[5] int 和 var a[10]int 是不同的类型

4.数组可以通过下标进行访问,下标是从0开始,最后一个元素是len-1

for  i:=0;i<len(a);i++{

}

5.访问越界,如果下标在数组合法范围之外,就会触发越界,panic异常

package main

import "fmt"

func main() {
var a []int
a[] =
fmt.Println(a)
for i := ; i < len(a); i++ {
fmt.Println(a[i])
} for index, val := range a {
fmt.Printf("a[%d]==%d\n", index, val)
}
}

6.数组是值类型,因此改变副本的值,不会改变本身的值

package main

import "fmt"

func test2() {
var a []int
b := a
b[] =
fmt.Println(a) }
//传递指针
func test3(arr *[]int) {
(*arr)[] =
} func main() {
//test2()
var a []int
//传 地址,改变 值类型
test3(&a)
fmt.Println(a)
}

7.费波纳茨数列

package main

import "fmt"
//菲波那切数列,非递归方式实现,打印前50个数
func fab(n int){
var a[]uint64
a = make([]uint64,n)
a[]=
a[]=
for i:=;i<n;i++{
a[i]=a[i-]+a[i-]
}
for _,v:=range a{
fmt.Println(v)
}
}
func main(){
fab()
}

8.声明数组,遍历数组

package main

import "fmt"

//数组的初始化
func testArray() {
var a []int = []int{, , , , }
var a1 = []int{, , , , }
var a2 = [...]int{, , , , , , }
var a3 = [...]int{: , : }
var a4 = [...]string{: "hello", : "world"}
fmt.Println(a)
fmt.Println(a1)
fmt.Println(a2)
fmt.Println(a3)
fmt.Println(a4)
} //多维数组
func muchArray() {
//两行五列的数组
var a [][]int = [...][]int{{, , , , }, {, , , , }}
for row,v:=range a{
for col,v1:=range v{
fmt.Printf("(%d,%d)=%d\n",row,col,v1)
}
}
} func main() {
//testArray()
muchArray()
}

golang之数组的更多相关文章

  1. Golang 入门 : 数组

    数组是指一系列同一类型数据的集合.数组中包含的每个数据被称为数组元素(element),这种类型可以是任意的原始类型,比如 int.string 等,也可以是用户自定义的类型.一个数组包含的元素个数被 ...

  2. Golang的数组

    Golang数组 package main import "fmt" func main() { // 定义一个长度为10,元素类型为string的值 li2 := [10]str ...

  3. Golang的数组初始化方式及for-range遍历

    package main import ( "fmt" ) func main() { ]], , } //定义并初始化长度为3的数组 fmt.Println(arr1) //[1 ...

  4. [golang note] 数组切片

    数组 √ golang数组包含的每个数据称为数组元素(element),数组包含的元素个数被称为数组长度(length). √ golang数组的长度在定义后不可更改,并且在声明时可以是一个常量或常量 ...

  5. golang json数组拼接

    2016年06月16日 15:38:25 阅读数:2575 标签: golangjson数组 更多 个人分类: golang   func main() { a := []byte(`{"P ...

  6. golang中数组指针与指针数组的区别实现

      指针数组和数组的指针,指的是两个不同的东西. 指针数组是有指针组成的数组,数组的指针是一个数组的指针. package main import "fmt" const MAX ...

  7. golang笔记——数组与切片

    一.切片的定义 我们可以从数组(go语言中很少直接使用数组)或者切片来初始化一个新的切片,也可以直接通过 make 来初始化一个所有元素为默认零值的切片. //1.通过数组来初始化切片 arr := ...

  8. 深入学习golang(1)—数组与切片

    数据(array)与切片(slice) 数组声明: ArrayType   = "[" ArrayLength "]" ElementType . 例如: va ...

  9. GOLang(数组操作随篇)

    创建一个类似PHP Array $data["userInfo"] = ["name"=>"Josn","ages" ...

  10. golang 修改数组中结构体对象的值的坑

    对对象数组逐个修改元素属性时候没有成功,代码如下: for _, configure := range configures { configure.Price = specPriceMap[conf ...

随机推荐

  1. 51Nod 1006:最长公共子序列Lcs(打印LCS)

    1006 最长公共子序列Lcs  基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 给出两个字符串A B,求A与B的最长公共子序列(子序列不要求是连续的). ...

  2. 随笔——python截取http请求报文响应头

    随笔——python截取http请求报文响应头 标签: pythonhttp响应头 2014-05-29 09:32 2114人阅读 评论(0) 收藏 举报  分类: 随笔(7)  版权声明:本文为博 ...

  3. vm虚拟机怎么访问本地硬盘

    第一步:点击VMware菜单“虚拟→设置”,在配置窗口的“选项”标签页内点击“共享文件夹”,在右侧点击“添加”按钮添加要共享的文件夹. 先确认虚拟机是关闭状态(susppend时无法修改属性)再修改虚 ...

  4. Phonegap 开发环境搭建

    以Android为例介绍Phonegap开发环境搭建 一. 软件下载 1. JDK 8 下载 http://www.oracle.com/technetwork/java/javase/downloa ...

  5. 数据库比较工具DBCompareTool for Oracle 0.2.5发布

    迁移数据库sql to oracle http://www.oracle.com/technetwork/cn/database/migration/connect-sqlserver-1945229 ...

  6. cassandra多数据中心的配置

    cassandra默认建keyspace的时候,是需要制定拓扑策略的,小数据就直接用单数据中心的simpleStrategy了,网上资料都没具体提如何配置多数据中心,这里简单贴一下 cassandra ...

  7. LAMP的安装和注意事项

    LAMP--Linux+Apache(httpd)+MySQL+PHP,是常用的web服务器架构,下面接受编译安装的过程,以及出现的错误. 注意事项: 1. 扩展epel源:参照:http://www ...

  8. web前端知识体系大全【欢迎补充】

    大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的是想要颠覆人 ...

  9. 根据插件Swipe,结合jQuery封装成的新的jQuery插件

    swipe支持电脑上的自动滑动,也支持手机端的滑动效果.但是每次调用只能支持一个效果或者说一个页面出现n个这样的效果,我们就得调用n次这个插件. 我使用swipe+jQuery使得swip变得方便使用 ...

  10. maven install 跳过测试

    mvn命令跳过测试:mvn install -Dmaven.test.skip=true 测试类不会生成.class 文件mvn install -DskipTests 测试类会生成.class文件 ...