您的位置:首页 > 编程语言 > Go语言

go语言快速入门:数据类型使用例(4)

2017-01-31 16:38 921 查看
上篇文章中介绍了18种基本数据类型以及8种复合数据类型,接下来简单使用例子来说明一下如何定义/初期化/使用。

基本数据类型

我们从18种基本数据类型中挑选几种有代表性的,然后使用go语言中常用的定义以及初期化的方式进行使用。

例子代码

[root@liumiaocn goprj]# cat basic-1.go
package main

import "fmt"

func main() {
//bool var definition and init
var flag bool = false
fmt.Println("flag = ", flag)

//int var
var i, j, k int
i = 1
j = 2
k = 3
fmt.Printf("i=%d, j=%d, k=%d\n", i, j, k)

//var rune and init
var r1, r2, r3 rune = 4, 5, 6
fmt.Printf("r1=%d r3=%d r3=%d\n", r1, r2, r3)

//var float32 and init
var (
f1 float32 = 2.1
f2 float32 = 3.4
)
fmt.Printf("f1=%f f2=%f\n", f1, f2)

//var string and init
var str1 string
str1 = "liumiaocn"
fmt.Println("hello, ", str1)

//:=
str2 := "hello"
fmt.Printf("str2 = %s \n", str2)
}
[root@liumiaocn goprj]#


执行结果

[root@liumiaocn goprj]# go run basic-1.go
flag =  false
i=1, j=2, k=3
r1=4 r3=5 r3=6
f1=2.100000 f2=3.400000
hello,  liumiaocn
str2 = hello
[root@liumiaocn goprj]#


指针类型

go语言中指针的基本概念和C语言的基本使用方式和思路相差不大。

例子代码

[root@liumiaocn goprj]# cat basic-pointer.go
package main

import "fmt"

func main() {
var intPointer *int
var i int = 100
intPointer = &i

fmt.Println("value of i = [%d] address is [%x] \n", i, &i)
fmt.Println("value of intPointer = ", intPointer)
fmt.Println("value of var pointed to = ", *intPointer)
}
[root@liumiaocn goprj]#


执行结果

[root@liumiaocn goprj]# go run basic-pointer.go
value of i = [%d] address is [%x]
100 0xc42000a2c0
value of intPointer =  0xc42000a2c0
value of var pointed to =  100
[root@liumiaocn goprj]#


数组

例子代码

[root@liumiaocn goprj]# cat basic-array.go
package main

import "fmt"

func main() {
var intarr1 = [6]int{1, 2, 3, 4, 5, 6}
fmt.Println("intarr1 = ", intarr1)

var strarr1 = []string{"this", "is", "a", "test"}
fmt.Println("strarr1 = ", strarr1)
}
[root@liumiaocn goprj]#


执行结果

[root@liumiaocn goprj]# go run basic-array.go
intarr1 =  [1 2 3 4 5 6]
strarr1 =  [this is a test]
[root@liumiaocn goprj]#


构造体

例子代码

[root@liumiaocn goprj]# cat basic-struct.go
package main

import "fmt"

func main() {

type person struct {
id      int
name    string
country string
}

//def and init 1
var liumiao person
liumiao.id = 1001
liumiao.name = "liumiao"
liumiao.country = "China"

fmt.Println("liumiao=", liumiao)

//def and init 2
michael := person{1002, "michael", "PRC"}
fmt.Println("michael=", michael)

}
[root@liumiaocn goprj]#


执行结果

[root@liumiaocn goprj]# go run basic-struct.go
liumiao= {1001 liumiao China}
michael= {1002 michael PRC}
[root@liumiaocn goprj]#
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  go语言