Go语言 数组基本使用及字符串转数组

package main

import "fmt"

func main() {
          
   
	//数组三种建立方式
	var num [4] int //var 变量 [max_length] type
	var num2=[10] int{
          
   1,2,3,4} //var 变量=[max_length] type{} 初始化
	num3:=[...] int{
          
   1:2} // 变量:=[...] type{} 初始化
	//数组三种打印方式
	//1 println
	fmt.Println(num)
	fmt.Println(num2)
	fmt.Println(num3)
	//2 for
	for i:=0;i<4;i++{
          
   
		num[i]=i
		fmt.Printf("%d 	",num[i]) //0 	1 	2 	3
	}
	fmt.Println()
	//3 for := range
	for index,value :=range(num2){
          
   
		fmt.Printf("index=%d,value=%d	",index,value) //index=0,value=1	index=1,value=2	index=2,value=3	index=3,value=4	index=4,value=0	index=5,value=0	index=6,value=0	index=7,value=0	index=8,value=0	index=9,value=0
	}
	fmt.Printf("
-----------------------------------
")
	//二维数组
	var num4 [5][6] int
	//num5 :=[3][2] int{
          
   {1,2},{3,4},{5,6}}
	for i:=0;i<len(num4);i++{
          
   
		for j:=0;j<len(num4[0]);j++{
          
   
			num4[i][j]=i+j
		}
	}
	fmt.Println(num4) //[[0 1 2 3 4 5] [1 2 3 4 5 6] [2 3 4 5 6 7] [3 4 5 6 7 8] [4 5 6 7 8 9]]
	fmt.Printf("
-----------------------------------
")
	//字符串转数组(不常用)
	etcd :="sdfsdferf"
	var stringarr [10]string      //创建空数组
	for index,value := range etcd {
          
   
		 stringarr[index]= string(value)
	}
	fmt.Println(stringarr) //[s d f s d f e r f]
	//字符串转切片
	etcd2 :="sdfsdferf"
	stringarr2 := make([]string,0)      //创建空数组
	for _,value := range etcd2 {
          
   
		stringarr2=append(stringarr2, string(value))
	}
	fmt.Println(stringarr2) //[s d f s d f e r f]
	//数组转字符串
	stringarr3 := [...] string{
          
   "abc","def","count"}    //创建空数组
	etcd3:=""
	for _,value := range stringarr3{
          
   
		etcd3+=value
	}
	fmt.Println(etcd3) //abcdefcount

}
经验分享 程序员 微信小程序 职场和发展