A Tour Of Go - 基础

定义包, 引入包

1
2
3
4
5
6
7
package main

import (
"fmt"
"math"
"time"
)

函数定义, 传参与返回值

缩略 (x,y int), 多返回值使用()管理类型, 但是 return 并不需要()

1
2
3
func swap(x int, y int) (int,int) {
return y, x
}

return 不写内容, 使用函数体中的变量

1
2
3
4
func swap(x, y int) (a, b int) {
a, b = y, x
return
}

变量定义

不赋值(无论函数内外)必须使用 var + 类型
函数外定义变量必须使用 var, 可搭配 = 赋值
函数内可以使用 := 赋值而不必指定类型

1
2
3
4
5
6
7
8
9
10
11
12
13
var v1 int
var v2 int = 1
func main() {
var v3 int
var v4 int = 1
var v5 = 1
v6 := 1

fmt.Println("values: ", v1, v2, v3, v4, v5, v6)

// format %T 类型, %v 值
fmt.Printf("%T%v", v1, v1)
}

基本类型

bool string

int int8 int16 int32 int64
uint uint8 uint16 uint32 uint64 uintptr

byte // uint8 的別名

rune // int32 的別名, 代表一個Unicode碼

float32 float64

complex64 complex128

类型转换

类型之间必须显示转换: 类型T(val)

常量

常数必须使用 const v = 来定义, 可以是字符, 字符串, 布尔或者数字, 不能使用 := 语法

Donate - Support to make this site better.
捐助 - 支持我让我做得更好.