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语言具有以下几种数据类型:

  1. 布尔型 bool
  2. 数字: 整形int和浮点型float32, float64
  3. 字符串
  4. 派生类型:指针(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

posted @ 2018-02-09 13:44  kris_zhang  阅读(178)  评论(0编辑  收藏  举报