Go内置类型/变量/常量 #1

【标识符/关键字】

•go区分大小写。

◆go语言中有25个关键字

break default func interface select
case defer go map struct
chan else goto package switch
const fallthrough if range type
continue for import return var

 

◆go语言有30多个预定义的名字,用于内建的常量、类型和函数

内建常量:
true false iota nil
内建类型:
int int8 int16 int32 int64
uint uint8 uint16 uint32 uint64 uintptr
float32 float64 complex128 complex64
bool byte rune string error
内建函数:
make len cap new append copy close delete
complex real imag
panic recover

◆fmt包的使用

1,格式说明

◆【变量】

函数外的每个语句都必须以关键字开始(var、const、func等)。

1,变量声明

•格式:var 变量名 变量类型

①标准声明

var v1 string

var v2 int

var v3 bool

②批量声明

var (

v1 string

v2 int

v3 bool

v4 float32

)

 

2,变量初始化

•格式:var 变量名 类型 = 表达式

var v1 string = "test"

var v2 int = 10

var v3 bool =false

•一次初始化多个变量

var v4,v5 = "test",20

•类型推导

根据等号右边的值来推导变量的类型完成初始化。

var v1 = "test"

var v2 = 10

•短变量声明

在函数内部,使用简略的 := 方式声明并初始化变量,:=不能使用在函数外。

package main

import (

    "fmt"

)

var v1 = 100 // 全局变量v1

func main() {

    v2 := 10

    v1 := 200 // 此处声明局部变量v1

    fmt.Println(v1, v2)

}

•匿名变量

多重赋值时,如果想要忽略某个值,可以使用匿名变量。 匿名变量用一个下划线_表示。

匿名变量不占用命名空间,不会分配内存,匿名变量之间不存在重复声明。

 

3,类型别名

type myint int #定义myint为int的别名;

var i myint = 10

 

◆【常量】

常量和变量声明类似,只是把var换成了const,常量在定义的时候必须赋值。常量声明后,在整个运行期间值不能改变。

const pi = 3.1415

•多个常量一起声明:

const {

    pi =3.1415

c1 = 1024

}

•const同时声明多个常量时,如果省略了值则表示和上一行的值相同。

const (

v1 = 100

v2 //也为100

v3 //也为100

)

 

◆【iota】

iota是go语言的常量计数器,只能在常量表达式中使用。

iota在const关键字出现时将被重置为0。const中每新增一行常量声明, iota计数一次。

const (

        v1 = iota //0

        v2 //1

        v3 //2

        v4 //3

)

•使用_跳过某些值

const (

    v1 = iota //0

    v2 //1

    _

    v4 //3

)

•iota声明中间插值

const (

    v1 = iota //0

    v2 = 100 //100

    v3 = iota //2

    v4 //3

)

const v5 = iota //0

◆【运算符】

++与--在go语言中是单独的语句,不是运算符。

【帮助文档】

•中文在线文档:https://studygolang.com/pkgdoc

•官网:https://golang.google.cn/

•代码自动格式化:go fmt main.go

参考:https://www.liwenzhou.com/categories/Golang/

原文地址:https://www.cnblogs.com/mountain2011/p/12494787.html