Go语言学习笔记二: 变量
Go语言学习笔记二: 变量
今天又学了一招如何查看go的版本的命令:go version
。另外上一个笔记中的代码还可以使用go run hello.go
来运行,只是这种方式不会生成exe文件。
定义变量
使用var关键字来定义变量。例如:
var x int = 100;
顺便说一句,go语言一行代码可以不写分号结束符。
也分单行注释//
和多行注释/* */
。
其实也可以不写类型,go语言会推测出数据类型。例如:
x := 100
写法看上去更简单了。还可以写成
var x = 200
可以一次定义多个变量:
var x, y int = 1, 2
数据类型
类型虽然可以不写,但不代表没有。Go语言具有以下几种数据类型:
- 布尔型 bool
- 数字: 整形int和浮点型float32, float64
- 字符串
- 派生类型:指针(Pointer), 数组,结构化(struct), Channel类型,函数类型,切片类型,接口类型(interface),Map类型。
Go也有基于架构的类型,例如:int, uint, uintptr。
uint8, uint16, uint32, uint64, int8, int16, int32, int64。
看到go语言支持这么多类型,我都快疯了,这是要干死所有语言的节奏呀(太消耗脑细胞了)。
package main
import "fmt"
func main() {
var a int = 0;
var b int8 = 127;
var c int16 = 32767;
var d int32 = 2147483647;
var e int64 = 9223372036854775807;
fmt.Println(a, b, c, d, e);
var f uint8 = 255;
var g uint16 = 65535;
var h uint32 = 4294967295;
var i uint64 = 18446744073709551615;
fmt.Println(f, g, h, i);
var k float32 = 3.1415;
var l float64 = 3.1415;
var m complex64 = 3.1415;
var n complex128 = 3.1415;
fmt.Println(k, l, m, n);
w := 1;
var y bool = true
z := false
fmt.Println(w, y, z);
}
参考资料:
https://golang.org/doc/
https://go-zh.org/doc/
http://www.runoob.com/go/go-data-types.html