值
代码实例
Go 拥有各值类型,包括字符串,整形,浮点型,布尔型等。下面是一些基本的例子。
package main
import "fmt"
func main() {
// 字符串可以通过 `+` 连接。
fmt.Println("go" + "lang")
// 整数和浮点数
fmt.Println("1+1 =", 1+1)
fmt.Println("7.0/3.0 =", 7.0/3.0)
// 布尔型,还有你想要的逻辑运算符。
fmt.Println(true && false)
fmt.Println(true || false)
fmt.Println(!true)
}
将代码保存为 E:FangCloudSyncWorkLSourcegolangchapter02alues.go
运行程序:
go run E:FangCloudSyncWorkLSourcegolangchapter02alues.go
输出:
golang
1+1 = 2
7.0/3.0 = 2.3333333333333335
false
true
false
变量
代码实例
在 Go 中,变量 被显式声明,并被编译器所用来检查函数调用时的类型正确性
package main
import "fmt"
func main() {
// `var` 声明 1 个或者多个变量。
var a string = "initial"
fmt.Println(a)
// 你可以申明一次性声明多个变量。
var b, c int = 1, 2
fmt.Println(b, c)
// Go 将自动推断已经初始化的变量类型。
var d = true
fmt.Println(d)
// 声明变量且没有给出对应的初始值时,变量将会初始化为
// _零值_ 。例如,一个 `int` 的零值是 `0`。
var e int
fmt.Println(e)
// `:=` 语句是申明并初始化变量的简写,例如
// 这个例子中的 `var f string = "short"`。
f := "short"
fmt.Println(f)
}
将代码保存为 E:FangCloudSyncWorkLSourcegolangchapter02ariables.go
运行程序
go run E:FangCloudSyncWorkLSourcegolangchapter02ariables.go
输出:
initial
1 2
true
0
short
常量
代码实例
Go 支持字符、字符串、布尔和数值 常量 。
// Go 支持字符、字符串、布尔和数值 _常量_ 。
package main
import "fmt"
import "math"
// `const` 用于声明一个常量。
const s string = "constant"
func main() {
fmt.Println(s)
// `const` 语句可以出现在任何 `var` 语句可以出现
// 的地方
const n = 500000000
// 常数表达式可以执行任意精度的运算
const d = 3e20 / n
fmt.Println(d)
// 数值型常量是没有确定的类型的,直到它们被给定了一个
// 类型,比如说一次显示的类型转化。
fmt.Println(int64(d))
// 当上下文需要时,一个数可以被给定一个类型,比如
// 变量赋值或者函数调用。举个例子,这里的 `math.Sin`
// 函数需要一个 `float64` 的参数。
fmt.Println(math.Sin(n))
}
将代码保存为 E:FangCloudSyncWorkLSourcegolangchapter02constant.go
运行代码
go run E:FangCloudSyncWorkLSourcegolangchapter02constant.go
输出:
constant
6e+11
600000000000
-0.28470407323754404