Golang的数组初始化方式及for-range遍历
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遍历的更多相关文章
- C语言数组初始化方式
//一维数组初始化//初始化方法1 int arr[5] = {3,7,2,1,9}; //定义了一个长度是5的数组,并给每个元素赋值 //初始化方法2 int arr[5] = {3,7}; //给 ...
- c语言数组不同初始化方式的结果
第一种初始化方式: #include <stdio.h> int main() { int numbers[5]={12,14}; for (int i=0; i<5; i++) { ...
- Java中数组的初始化方式
Java中数组的初始化方式 初始化方式有两种: 1.静态初始化:初始化时由程序猿显式指定每一个数组元素的初始值,由系统指定数组长度 2.动态初始化:初始化时由程序猿仅仅指定数组长度,由系统为数组 ...
- Golang 入门 : 数组
数组是指一系列同一类型数据的集合.数组中包含的每个数据被称为数组元素(element),这种类型可以是任意的原始类型,比如 int.string 等,也可以是用户自定义的类型.一个数组包含的元素个数被 ...
- golang之数组与切片
数组 数组可以存放多个同一类型数据,数组也是一种数据类型,在Go中,数组是值类型. 数组的定义: var 数组名 [数组大小]数据类型 var a [5]int 赋初值 a[0] = 1 a ...
- HashMap优雅的初始化方式以及引申
小记 相信很多人和笔者一样,经常会做一些数组的初始化工作,也肯定会经常用到集合类.假如我现在要初始化一个String类型的数组,可以很方便的使用如下代码: String [] strs = {&quo ...
- No1_3.数组初始化_Java学习笔记
public class HelloArray { public static void main(String[] args) { // TODO Auto-generated method stu ...
- c语言数组初始化问题
2147483648字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素. charstr[10]={'I','','a','m','',‘h’,'a','p','p','y'}; 即把10 ...
- golang range遍历是新创建对象还是创建对象的引用
golang range遍历是新创建对象还是创建对象的引用,通俗的讲就是range对range出来的对象的修改会不会同步到被遍历的那个数组.先看如下代码: package main import ( ...
随机推荐
- Java通过POI生成Excel
import java.io.FileOutputStream; import java.text.SimpleDateFormat; import java.util.ArrayList; impo ...
- Nginx或Apache通过反向代理配置wss服务
nginx配置参考 前提条件及准备工作: 1.假设ws服务监听的是8282端口(websocket协议) 2.已经申请了证书(pem/crt文件及key文件)放在了/etc/nginx/conf.d/ ...
- 好吧,我承认我是爱瞎折腾----利用YDUI改变页面UI
上周恒丰代付接口上线投产后,我做了一个“恒丰代付检查工具”,用途是,当线上调用恒丰代付出现了问题订单时,可以在这个工具页里做相应的弥补. 我项目里其他一些工具页的UI用的是YDUI.YDUI号称是“一 ...
- C#什么时候需要使用构造函数
只要使用 new 运算符实例化对象,并且不为 new 提供任何参数,就需要调用默认构造函数.除非类是 static 的,否则 C# 编译器将为无构造函数的类提供一个公共的默认构造函数,以便该类可以实例 ...
- C# Mongo Client 2.4.2创建索引
static async Task CreateIndex() { var client = new MongoClient(); var database = client.GetDatabase( ...
- mybatis batchinsert
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-/ ...
- c#之正则表达式
一,C#正则表达式符号模式 字 符 描 述 \ 转义字符,将一个具有特殊功能的字符转义为一个普通字符,或反过来 ^ 匹配输入字符串的开始位置 $ 匹配输入字符串的结束位置 * 匹配前面的零次或多次的子 ...
- linux打包压缩与搜索命令
1.tar命令 tar命令用于对文件进行打包压缩或解压,格式为“tar [选项] [文件]”. tar命令的参数及其作用 参数 作用 -c 创建压缩文件 -x 解开压缩文件 -t 查看压缩包内有哪些 ...
- ubuntu 换源过程中遇到的坑(一):Could not resolve 'mirrors.aliyun.com'
执行更新数据(sudo apt-get update)提示: Err http://mirrors.aliyun.com trusty Release.gpg Could not resolve 'm ...
- python 查询文本文件的层次
I/O系统有一系列的层次构建而成 下面是操作一个文本文件的例子来查看这种层次 >>> f = open('sample.txt','w') >>> f <_i ...