变量和常量
变量
1. var声明变量类型和设置变量的初始值 (可以是全局变量,也可以是局部变量)
var 声明变量的格式
var 变量名 变量类型 =变量初始值 // 指定类型和初始值
或者
var 变量名 变量类型 // 指定变量和类型
或者
var 变量名 = 变量初始值 // 可以根据初始值的dtype推出变量是什么类型 (常用)
注意:
- 声明出来的变量一定要使用,不然会报错
- 变量可以放在全局声明,也可以是局部声明
- 初试字符串一定要区分单引号和双引号
- 变量声明需要唯一,不能重复声明
举例
package main
import "fmt"
var age = "abcde" // 双引号输出的是里面的字符串 (常用方式)
var name = 'a' // 单引号输出的是字母对应的ASCII码
var n int = 12 // 指定类型和指定初始值,声明全局变量
func main() {
fmt.Println("Hello123466, 终于安装成功!")
m := 1 // 短变量声明 -- 局部变量 (常用)
fmt.Println(m)
var K int = 100000 // 声明局部变量
fmt.Println(K)
fmt.Println(age)
fmt.Println(name)
fmt.Println(n)
}
2. var() 批量声明变量的方法
var (
变量1 = 变量初始值1
变量2 变量类型
变量3 变量类型 = 变量初始值
)
举例说明 :
package main
import "fmt"
var (
age = "abcde"
name = 'a'
n int = 12
)
func main() {
fmt.Println("Hello123466, 终于安装成功!")
m := 1
fmt.Println(m)
var K int = 100000
fmt.Println(K)
fmt.Println(age)
fmt.Println(name)
fmt.Println(n)
}
3. := 用于短变量声明 (用于函数内部==函数内的局部变量)
package main
import "fmt"
func main() {
m := 1
fmt.Println(m)
}
4. _短下划线声明匿名变量 (可以多次使用)
表示,忽略掉某个输出值或变量
常量
1. const声明常量
const 常量名称 = 常量初始值 // 常量声明
const 常量名称 常量类型 = 常量初始值
批量声明 常量
const(
常量名称1 = 常量初始值
常量名称2 常量类型 = 常量初始值
)
注意:
- 如果某个常量没有写出初始值,则默认和上面的初始值是一样的
- 常量一旦声明就不发改动了
举例:
package main
import "fmt"
const (
age = "abcde"
name = 'a'
n // 这里对这个常量没有声明,就和上一个是一样的,也就是 n = name = 'a'
)
func main() {
fmt.Println("Hello123466, 终于安装成功!")
m := 1
fmt.Println(m)
const K int = 100000
fmt.Println(K)
fmt.Println(age)
fmt.Println(name)
fmt.Println(n)
}
2. 常量计数器 iota — 只能出现在常量中
在没有遇到const的时候,每出现一个常量声明 , iota则计数加1
每遇到一个const的时候,iota = 0
iota + 下划线 ===》可以过滤掉某个计数值
举例 :
package main
import "fmt"
const (
age = iota // age = iota = 0
name // name = age = iota = 0 +1 = 1
a = "a" // a = "a", iota = 0+1 +1
n // n = a = "a", iota = 0+1+1 +1
m = iota // m = iota = 0+1+1+1 +1
)
func main() {
fmt.Println(age, name, n, m)
}