golang基础之数据类型

1. string类型变量

// 方式一 
var s string
s = "sss"
fmt.Println(s)
// 方式二
var s = "sss"
fmt.Println(s)
// 方式三
s := "sss"
fmt.Println(s)

2. int类型变量

// 方式一 
var i int
i = 1
fmt.Println(i)
// 方式二
var i = 1
fmt.Println(i)
// 方式三
i := 1
fmt.Println(i)

3. 数组

// 方式一
var a [3]int // 3表示该数组的元素个数是三个
a[1] = 5	// 给索引是1的元素赋值,没有被赋值的元素默认是0
fmt.Println(a)
// 方式二
var b = [...]int{1, 2, 3}	// 没有指定数组的元素是个数,但是后面给出了数组的元素,那么数组的长度就是3
fmt.Println(b)
// 方式三
c := [3]int{}	// 指定数组的长度是3,并没有指定具体的元素是哪些,那么数组中元素均为默认值0
fmt.Println(c)
// 方式四
var d = [5]int{1,2}		// 定义数组的长度,并且给出元素,因为只给了两个,那么就只有索引0 1的是有值的,其他默认是0
fmt.Println(d)
// 方式五
var e = [5]int{1:3,3:1}		// 定义数组长度,并且按索引赋值
fmt.Println(e)

4. 切片

var se1[] int
fmt.Println(se1)
se2 := make([]int, 5, 10)
fmt.Println(se2)
se3 := []int{1,2,3}
fmt.Println(se3)

var arr1=[5]int{1,2,3,4,5}
var se4 = arr1[:]
fmt.Println(se4)
var se5 = arr1[2:4]	// 左包右不包
fmt.Println(se5)

5. 指针

var a int = 3
fmt.Println(a)
var s *int
s = &a
fmt.Println(s)
fmt.Println(*s)

6. map集合类型,需要使用make函数进行初始化,否则只会创建一个 nil map,无法插入键值对

var map1 map[string]string
fmt.Println(map1)
map2 := make(map[string]string)
map2 ["1"] = "one"
map2 ["2"] = "two"
for key:= range map2{
	fmt.Println(map2[key])
}
fmt.Println(map2)
map3 := map[string]string{"first":"ahh","second":"error","third":"ok"}
fmt.Println(map3)
delete(map3,"second")
fmt.Println(map3)
原文地址:https://www.cnblogs.com/chitalu/p/12124649.html