Golang教程的笔记
将Go的教程内容列为项目点
1 大写字母开头的名称可以在外部访问。以小写字母开头的名称无法从外部访问。
2 在函数参数的变量名后面写上类型名称。
func test(x int, y int) int {
// この同じ形の場合下記もOK
// func test(x, y int) int {
return x + y
}
如果有多个返回值的情况
func test(x int, y int) (int, int) {
return x + y
}
如果有多个返回值的情况(将变量名设置为返回值)
func test(sum int) (a, b int) {
a = sum * 4 / 9
b = sum - x
// 戻り値に変数名を設定した場合returnに何も書かずに戻すことができる
return
}
声明5个变量
// 変数の宣言
var i int
//初期化も同時に行う
var i, j int = 1, 2
//暗黙的な宣言
i := 3
// 関数の外では、varが必要で暗黙的な宣言は利用できない
//型を定義しない場合
i := 42 // int
f := 3.142 // float64
g := 0.867 + 0.5i // complex128
//定数は、文字(character)、文字列(string)、boolean、数値(numeric)のみ
//定数は := を使って宣言できない
const Pi = 3.14
如果没有初始值的情况下,将设置为0值。
数値型(int,floatなど): 0
bool型: false
string型: "" (空文字列( empty string ))
在Go语言中,对于类型转换需要进行显式转换。
如果使用指针的情况下
在使用指针时需要考虑设置参数和返回值的需求
func main() {
i := 0
test(i)
fmt.Println(i) // 0
}
func test(i int) {
i = 10
}
如果要将上述内容反映在main()的i上。
func main() {
i := 0
test(&i) //&を付ける
fmt.Println(i) // 0
}
func test(i *int) { //*を付ける
i = 10
}
当参数为slice的情况下。
如果没有按照下面的描述进行指定,使用array关键字会出错。
func main() {
sampleArray := [3]int{} // arrayを定義
testSlice(sampleArray) // これはエラー
testSlice(sampleArray[:]) // これは正常 ← 戻り値はsliceになるから正常
}
func takeSlice(s []int) {}
请提供更多上下文以便提供准确的中文翻译。
Go游之旅