首先项目里要有 go.mod 文件,这个文件里包含了依赖包的信息,如果想要整理下这个文件,可以用 go mod tidy,会清理没用到的包。如果没有 go mod文件,可以初始化这个go项目。比如go代码都在当前路径的 my_project 文件夹下,那么我们用下面的命令,可以在该文件夹下创建 go.mod
package main
import (
"fmt"
)
func main() {
str := "sdfajlskfa"
for i, c := range str {
fmt.Printf("%c", c)
fmt.Printf("%d,", i)
}
result1, result2 := add(2, 3)
fmt.Print(result1, result2)
}
func add(a, b int) (int, int) {
return a + b, a * b
}
package main
import (
"fmt"
)
func main() {
sum := 0
sum = getSum(1, 2, 3)
fmt.Println("sum result: ", sum)
}
func getSum(num ...int) int {
sum := 0
for i := 0; i < len(num); i++ {
sum += num[i]
}
return sum
}
func printType(args ...interface{}) {
for _, arg := range args {
switch arg.(type) {
case int:
fmt.Println(arg, " type is int")
case string:
fmt.Println(arg, " type is string")
default:
fmt.Println(arg, " type is unknown")
}
}
}
var s []string
s = append(s, []string{"a", "b", "c"}...)
fmt.Println(s)
arr := [4]int{1,2,3,4}
sli := []int{1,2,3,4}
r := func(a, b int) int {
return a + b
}(3, 5)
fmt.Println(r)
func main() {
addR := operator(3, 4, add)
fmt.Println(addR)
}
func operator(a, b int, f func(int, int) int) int {
r := f(a, b)
return r
}
func add(a int, b int) int {
return a + b
}