Go语言入门指南(下)| 青训营

56 阅读2分钟

Go语言变量

声明变量的一般形式是使用 var 关键字,可以一次声明多个变量:

var identifier1, identifier2 type

简单地,我们也可以使用:=操作符

可以在变量的初始化时省略变量的类型由系统自动判断,声明语句写上 var 关键字其实是显得有些多余了,因此我们可以将它们简写为 a := 50 或 b := false。

a 和 b 的类型(int 和 bool)将由编译器自动推断。

Go语言常量

常量是一个简单值的标识符,在程序运行时,不会被修改的量。 常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型。

常量的定义格式

const identifier [type] = value

也可以省略类型说明符[type],编译器会自动判断

多个相同类型的常量简写

const c_name1, c_name2 = value1, value2

Go语言函数

Go语言函数定义格式如下

func function_name ( [parameter list] ) [ return_types ] {
函数体
}

实例:返回两个数中的最大值

/* 函数返回两个数的最大值 */
func max(num1, num2 int) int {
   /* 声明局部变量 */
   var result int
​
   if (num1 > num2) {
      result = num1
   } else {
      result = num2
   }
   return result 
}

Go语言数组

声明数组

var arrayName [size]dataType

初始化数组

默认初始化值为0

var numbers [5]int

也可以使用初始化列表

var numbers = [5] int{1,2,3,4,5}

还可以更简洁

numbers := [5] int{1,2,3,4,5}

如果数组的长度不确定,可以使用...代替数组长度

var balance = [...]float32{1000.0, 2.0, 3.4, 7.0, 50.0}
//或
balance := [...]float32{1000.0, 2.0, 3.4, 7.0, 50.0}

指针声明格式如下

var ip *int        /* 指向整型*/
var fp *float32    /* 指向浮点型 */

GO语言切片

切片是对数组的抽象。数组的长度不可变,切片相当于动态数组,可以追加元素 定义切片,可以声明一个未指定大小的数组来定义切片: var identifier []type 也可以使用make()函数来创建切片; var slice1 []type=make([]type,len)

切片是可索引的,并且可以由len()方法获取长度。 切片提供了计算容量的方法cap()可以测量切片最长可以达到多少