1.go-test目录中初始化模块
go mod init mathtest #必须和main.go中导入的mathtest一样
2.go-test中的目录结构
├── go.mod
├── main.go
└── myMath└── mathutil.go
3.main.go
package main // 必写:声明主包,作为可执行程序import ("fmt""mathtest/myMath"
)func main() { // 必写:程序入口// 调用库文件中的Pow2函数,计算2的0-7次方for i := 0; i < 8; i++ {fmt.Printf("2**%d = %d\n", i, mathutil.Pow2(i))}
}
4.mathutil.go
// 库文件:package名自定义(需与文件名无强关联,但建议语义一致)
package mathutil// Pow2 计算2的n次方(注意:库中可导出函数首字母必须大写,否则无法被外部导入)
func Pow2(n int) int {if n < 0 {return 0 // 简单容错:负数次幂返回0}result := 1for i := 0; i < n; i++ {result *= 2}return result
}