一、输出
Println 和 Print 区别
Println
会自动换行输出,Print
不会自动换行输出。
package main
import(
"fmt"
)
func main(){
fmt.Println("hello, golang!")
fmt.Print("hello, golang!")
}
输出:
hello, golang!
hello, golang!
一次输出多个值,Println
中间会有空格,Print
没有空格。
package main
import(
"fmt"
)
func main(){
fmt.Println("A", "B", "C")
fmt.Print("A", "B", "C")
}
输出:
A B C
ABC
Println 和 Printf 区别
Printf
是格式化输出
packagemain
import(
"fmt"
)
funcmain(){
vara="aaa"
fmt.Println(a)
fmt.Printf("%v", a)
}
输出:
aaa
aaa
二、变量与常量
打印变量类型
类型推导方式
package main
import(
"fmt"
)
func main(){
a := 10
fmt.Printf("a = %v, type(a) = %T", a, a)
}
输出:
a = 10, type(a) = int
- 常量定义完必须赋值,变量可以先定义,再赋值。
- 变量可以修改,常量不可以修改。
const
const
同时声明多个常量,但是只给第一个赋值,则其他常量值和第一个值相同。
package main
import(
"fmt"
)
func main(){
const (
n1 = 100
n2
n3
)
fmt.Println(n1, n2, n3)
}
输出:
100 100 100
iota
计数器,每次碰到 const
自动加一。
package main
import(
"fmt"
)
func main(){
const a = iota
fmt.Println(a)
const(
n1 = iota
n2
n3
)
fmt.Println(n1, n2, n3)
}
输出:
0
0 1 2
iota 插队
package main
import(
"fmt"
)
func main(){
const(
n1 = iota
n2 = 100
n3 = iota
n4
)
fmt.Println(n1, n2, n3, n4)
}
输出:
0 100 2 3
三、命名规则
标识符:分大小写,必须以字母、下划线开头,紧跟 0 个或多个字符或 Unicode 数字。驼峰命名规则。
无效标识符:
- 1ab(以数字开头)
- case(Go 语言的关键字)
- a+b(运算符是不允许的)
25 个关键字或保留字,关键字不能够作标识符使用。