变量
package main //非注释的第一行声明包,每个GO应用程序都有一个main包 import "fmt" //导入包 var n int //可以声明变量,不能赋值,后面必须用到。 //匿名变量:匿名变量不占用命名空间,如果想要忽略某个变量可以使用匿名变量。匿名变量用一个下划线表示,如 func act()(int,string) { return 66,"GO" } func main() {//大括号必须跟在后面,,不能换行 //func 定义一个函数 //main 函数开始执行 /* 多行注释 */ //语言变量声明格式: var 变量名 变量类型 //var name string //var age int //var isOk bool //fmt.Print(name,age,isOk)//必须使用,不然报错 //批量声明 var( a string b int c bool ) fmt.Printf(a,b,c) //声明变量同时制定初始值: var 变量名 变量类型 = 所赋值 //类型推导:可以省略变量类型。由编译器根据变量的初始值推断。 //var v = "hello" //var n = "word" //fmt.Println(v+" "+n) //短变量声明,只能用在函数中 //m:=10 //fmt.Println(m) //下划线表示某个数值收到了但是不需要 //x,_:=act() //_,y:=act() //fmt.Println("x=",x) //fmt.Println("y=",y) //常量 // fmt.Print(a,b,c,d,f,g,h,j,k,l) } 常量 //const pi = 3.1415 //const e = 2.7 //const ( // a = 10 // b = 9 // c // d // //c、d默认等于b //) // //const ( // f = iota//0 // g = iota//1 // h = iota//2 // _ //3 // j = iota//4 // k = 100 // l = iota//6 //) //GO会自动格式化代码,对缩进、空格没有要求 //变量命名推荐使用驼峰
常量
package main 常量 //const pi = 3.1415 //const e = 2.7 //const ( // a = 10 // b = 9 // c // d // //c、d默认等于b //) // //const ( // f = iota//0 // g = iota//1 // h = iota//2 // _ //3 // j = iota//4 // k = 100 // l = iota//6 //) func main() { //fmt.Print(a,b,c,d) }
字符串
package main import ( "fmt" "strings" ) func main() { s1 := "hellow" fmt.Println(len(s1)) s2 := "我的GO" fmt.Println(len(s2)) //拼接字符串 fmt.Println(s1 + s2) s3 := fmt.Sprintf("%s - %s", s1,s2) fmt.Println(s3) //字符串的分割 s4 := "how do you do ?" fmt.Println(strings.Split(s4, " ")) fmt.Printf("%T\n", strings.Split(s4," ")) //判断是否包含 fmt.Println(strings.Contains(s4,"you")) //判断前缀 fmt.Println(strings.HasPrefix(s4,"how")) //判断后缀 fmt.Println(strings.HasSuffix(s4, "me")) //判断字串的位置 fmt.Println(strings.Index(s4, "do")) //最后子串出现的位置 fmt.Println(strings.LastIndex(s4, "do")) //join s5 := []string{"how","do","you","do","?"} fmt.Println(s5) fmt.Println(strings.Join(s5, "+")) //字符 //byte uint8的别名 // rune int32的别名 var c1 byte = 'c' var c2 rune = 'c' fmt.Println(c1,c2) fmt.Printf("c1:%T c2:%T\n",c1,c2) s := "hello我的GO" for i := 0;i<len(s);i++{ fmt.Printf("%c\n",s[i]) } fmt.Println() for _, r := range s{ fmt.Printf("%c\n",r) } }