靠一门编程语言谋发展,显然不是我的规划方向。所以,我又换了份工作,游戏开发,编程语言Golang为主。
HelloWorld
在安装了go的开发环境以后,老规矩,和新语言打个招呼。
package main
import "fmt"
func main(){
fmt.Println("Hello,world")
}
main方法下在控制台输出HelloWorld。如果是命令行执行的话 : go run **.go
变量
在go中,对于变量的声明比Java的声明方式要灵活友好的多
package main
import "fmt"
func main() {
var a string = "initial" // 声明一个string类型的变量
fmt.Println(a)
var b, c int = 1, 2 // 声明两个同为 int 类型的变量
fmt.Println(b, c)
// 声明bool(同Java的boolean)类型的值,此处省略 bool类型,go 可根据 值进行自动判断类型。
var d = true
fmt.Println(d)
var e int // 声明一个 int 类型变量,未赋值,默认为 0
fmt.Println(e)
f := "short" // 同 var f = "short" ,简化版的声明方式
fmt.Println(f)
}
常量
Go支持字符、字符串、布尔和数值 常量。const 用于声明常量。
const 语句可以出现在任何var可以出现的地方。
package main
import "fmt"
import "math"
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))
}
for循环
for是Go中唯一的循环结构。
package main
import "fmt"
func main() {
//最常用的方式,带单个循环条件。
i := 1
for i <= 3 {
fmt.Println(i)
i = i + 1
}
//经典的初始化/条件/后续形式 for 循环。
for j := 7; j <= 9; j++ {
fmt.Println(j)
}
//不带条件的 for 循环将一直执行,直到在循环体内使用了 break 或者 return 来跳出循环。
for {
fmt.Println("loop")
break
}
}