package main
import (
"fmt"
) func main() {
var arr1 []int = []int{, , } //定义并初始化长度为3的数组
fmt.Println(arr1) //[1 2 3] arr2 := [...] int {:-} //长度为20的数组,只有最后一个是-1,其他都是0
fmt.Println(arr2) //[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1] arr3 := []int{, , } //定义并初始化长度为3的数组
fmt.Println(arr3) //[5 6 7] arr4 := [...]int{:, :, :} //指定下标的数组,一共四个,因为最大是3
fmt.Println(arr4) //[200 100 0 50] var arr5 []int //3个int型的数组,初始值是3个0,数组“零值”状态
fmt.Println(arr5) //[0 0 0] //二维数组
arr6 := [][]int{{,,,},{,,},{,,}}
//打印一维数组长度
fmt.Println(len(arr6)) //3
//打印二维数组长度
fmt.Println(len(arr6[])) //4
//打印整个二维数组
fmt.Println(arr6) //[[0 1 2 3] [6 7 9 0] [6 4 5 0]] arr7 := [...]string{:"zhangsan", :"lisi", :"wangwu"}
fmt.Printf("%q",arr7) //["" "zhangsan" "" "wangwu" "" "" "lisi"]
}
package main
import "fmt"
func main() {
var a = new([]int)
test(a)
fmt.Println(a, len(a))
}
func test(a *[]int) {
a[] =
} ///&[0 5 0 0 0] 5
package main
import "fmt"
func main() {
a := [...]User{
{, "User0"},
{, "User8"},
}
b := [...]*User{
{, "User0"},
{, "User8"},
}
fmt.Println(a, len(a))
fmt.Println(b, len(b)) }
type User struct {
Id int
Name string
} //结果
//[{0 User0} {8 User8}] 2
//[0xc042002440 0xc042002460] 2
//for range遍历
package main
import (
"fmt"
) func main() {
arr := [...]string{"golang", "php", "java", "python"}
for key, val := range arr {
//for _, val := range arr { //如果不想利用key,可以用占位符
fmt.Printf("key=%v, val=%v\n", key, val)
}
// key=0, val=golang
// key=1, val=php
// key=2, val=java
// key=3, val=python
}

Golang的数组初始化方式及for-range遍历的更多相关文章

  1. C语言数组初始化方式

    //一维数组初始化//初始化方法1 int arr[5] = {3,7,2,1,9}; //定义了一个长度是5的数组,并给每个元素赋值 //初始化方法2 int arr[5] = {3,7}; //给 ...

  2. c语言数组不同初始化方式的结果

    第一种初始化方式: #include <stdio.h> int main() { int numbers[5]={12,14}; for (int i=0; i<5; i++) { ...

  3. Java中数组的初始化方式

    Java中数组的初始化方式    初始化方式有两种: 1.静态初始化:初始化时由程序猿显式指定每一个数组元素的初始值,由系统指定数组长度 2.动态初始化:初始化时由程序猿仅仅指定数组长度,由系统为数组 ...

  4. Golang 入门 : 数组

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

  5. golang之数组与切片

    数组 数组可以存放多个同一类型数据,数组也是一种数据类型,在Go中,数组是值类型. 数组的定义: var 数组名 [数组大小]数据类型 var a [5]int 赋初值   a[0] = 1    a ...

  6. HashMap优雅的初始化方式以及引申

    小记 相信很多人和笔者一样,经常会做一些数组的初始化工作,也肯定会经常用到集合类.假如我现在要初始化一个String类型的数组,可以很方便的使用如下代码: String [] strs = {&quo ...

  7. No1_3.数组初始化_Java学习笔记

    public class HelloArray { public static void main(String[] args) { // TODO Auto-generated method stu ...

  8. c语言数组初始化问题

    2147483648字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素. charstr[10]={'I','','a','m','',‘h’,'a','p','p','y'}; 即把10 ...

  9. golang range遍历是新创建对象还是创建对象的引用

    golang range遍历是新创建对象还是创建对象的引用,通俗的讲就是range对range出来的对象的修改会不会同步到被遍历的那个数组.先看如下代码: package main import ( ...

随机推荐

  1. 线程中使用SaveFileDialog不能弹出窗体

    在子线程中使用 SaveFileDialog 无法弹出窗体,主要是我们需要用主线程去处理SaveFileDialog , 我们可以将子线程进行如下设置: public partial class Fo ...

  2. 关于bjam编译自己模块出错的问题

    将这个目录下C:\Users\Regubed的user-config.jam改为下面内容 # MSVC configurationusing msvc : 9.0 ; # Python configu ...

  3. js中变量提升(一个是变量,一个是函数表达式都会存在变量提升,函数声明不存在)

    一.变量提升 在ES6之前,JavaScript没有块级作用域(一对花括号{}即为一个块级作用域),只有全局作用域和函数作用域.变量提升即将变量声明提升到它所在作用域的最开始的部分.上个简历的例子如: ...

  4. 集体干死java 在启动.sh

    #!/bin/bash#reboot .jar#author wangdonghuipid=`ps -ef |grep java |awk '{print $2}'`echo $pidecho'--- ...

  5. mysql字符集问题,及排序规则

    字符集问题: 基本概念 • 字符(Character)是指人类语言中最小的表义符号.例如’A'.’B'等:• 给定一系列字符,对每个字符赋予一个数值,用数值来代表对应的字符,这一数值就是字符的编码(E ...

  6. 关于js语句的分号

    我在使用js的时候可能发现一个现象:js语句结尾有时候有分号,有时候没有,没有的时候js代码也是能正确执行的. 到底要不要写分号?QAQ 转自博客园@winter-cn JavaScript自动加分号 ...

  7. executing in nfs will not generate core dump file

    最近遇到了一个奇怪的问题. linux系统的pc搭建nfs server,开发板作为nfs client,开发板中全程root权限操作,执行的程序放到 nfs server 中 exports 出的目 ...

  8. lua元表学习

    a = {, } b= {, } vector2 = {} function vector2.Add(v1, v2) if(v1 == nil or v2 == nil)then return nil ...

  9. Redis Cluster(集群)的搭建

    一.Redis的下载.安装.启动(单实例) 我们统一将Redis安装在/opt目录下,执行命令如下: $ cd /opt $ wget http://download.redis.io/release ...

  10. Yii ActiveRecord生命周期