Go基礎知識学習(4)パッケージ


パッケージ(package)はandroidのjarやCのライブラリのような関数やデータの集合であり、
バブルソートアルゴリズムを含むパケット‖exp 6を作成した.go └─algorithms
   bubble.go

そのうちexp 6.goはテストパッケージのプログラムです.algorithms/bubble.goはパッケージexp 6である.goコードは次のとおりです.
package main

import (
    "fmt"
    "github.com/panyingyun/gostudy/algorithms"
)

func main() {
    s := []int{10, 5, 6, 3}
    fmt.Println(s)
    bubble.Sort(s)
    fmt.Println(s)
}

bubble.goコードは次のとおりです.
//bubblesort.go

package bubble

func Sort(values []int) {
    flag := true

    for i := 0; i < len(values)-1; i++ {
        flag = true

        for j := 0; j < len(values)-i-1; j++ {
            if values[j] > values[j+1] {
                values[j], values[j+1] = values[j+1], values[j]
                flag = false
            }
        }

        if flag == true {
            break
        }
    }
}

パッケージのエクスポート関数は大文字で始まる必要があります.このパッケージを参照したファイルがこの関数の具体的な実行にアクセスするには、algorithmsに切り替え、go installを実行し、go run exp 6を実行します.goでいい
コード:https://github.com/panyingyun/gostudy