王志广的个人博客

Golang学习

admin发表于2016-07-19  973次浏览 标签: 

Golang是Google开发的一种编译型,可并行化,并具有垃圾回收功能的编程语言。性能相比PHP高很多,而且处理并发能力也不错,不过php-cgi模式也不错,各有优缺点吧。

1、变量
go一般声明为
var 变量名 变量类型
也可以直接判断类型规定类型
变量名 := 值
也可以这样赋值
i,j = i,j

2、常量
声明
const(
a=a
b=b
c=c
)

3、go数据类型
bool
string
int int8 int16 int32 int64
uint uint8 uint16 uint32 uint64
uintptr
byte(等价于 uint8)
rune(等价于 int32,用于表示一个 unicode code point)
float32 float64
complex64 complex128

4、For:循环
//单一的循环
i := 1
for i <= 3 { fmt.Println(i) i = i + 1 } //带初始化/条件的循环 for j := 7; j <= 9; j++ { fmt.Println(j) } //通过条件的for循环会一直执行 for { fmt.Println("loop") break } } 5、If/Else:条件语句 //基本用法 if 7%2 == 0 { fmt.Println("7 is even") } else { fmt.Println("7 is odd") } //if中也可以声明变量 if num := 9; num < 0 { fmt.Println(num, "is negative") } 6、Switch:条件枚举 //基础的Switch i := 1 switch i { case 1: fmt.Println("one") case 2: fmt.Println("two") case 3: fmt.Println("three") } //多种条件匹配 switch time.Now().Weekday(){ case time.Saturday, time.Sunday: fmt.Println("it's the weekend") default: fmt.Println("it's a weekday") } //无条件的switch t := time.Now() switch { case t.Hour() < 12: fmt.Println("it's before noon") default: fmt.Println("it's after noon") } 7、函数 //基本函数定义 func add(x int, y int) int { return x + y } 调用 add(1,2) 8、数组和 slice 数组长度无法被改变 数组用法如下: var a [2]string a[0] = "Hello" a[1] = "World" slice用法: a := make([]int, 5) p := []int{2, 3, 5, 7, 11, 13} 9、range被用在 for 中来迭代一个 slice 或者一个 map for i, v := range s { fmt.Println(i, v) } 10、map map 用于映射 key 到 value(值) m = make(map[string]Vertex) m["Bell Labs"] = Vertex{ 40.68433, -74.39967, } 扩展 goweb开发可以使用beego框架

你可以发表评论引用到你的网站或博客,或通过RSS 2.0订阅这个日志的所有评论。
上一篇:
下一篇:
没有评论
我来说两句

  Ctrl+Enter