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游之旅

bannerAds