分享
GO语言基础学习
cb741044015 · · 1642 次点击 · · 开始浏览这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
包(packages)
每个GO程序都有一个个包组成,程序由main包开始运行。
package main
func main(){
//do something
}导入(import)
go语言通过import关键字,将所需要使用的包引入到程序中,可以:
import( "fmt" "math/rand" )或者
import "fmt" import "math/rand"
函数(Functions)
一个函数可以有0个或多个参数。参数的类型在变量的后面声明,用空格隔开,函数的返回类型在括号后面声明,如果有多个返回值,则用括号括起,用逗号分割,例如
这个函数定义是这样的,函数名为foo,返回值为int 型,参数为a,b均是intint型 func是关键字,声明这是一个函数func foo(a,b int) int{
if a>b{
return a
}
return b
}参数类型的连续性:如果一个参数没有声明类型,那么这个参数的类型与下一个参数的类型相同
多返回值:go语言可以定义多个返回值,以尽可能的减少数据结构例如
func swap(x, y string) (string, string) {
return y, x
}从来没有如此简单的实现一个值交换预定义返回值变量,这样写出来的函数是如此优美并简单
func split(sum int) (x, y int) {
x = sum * 4 / 9
y = sum - x
return
}
变量(variables)
一个变量声明可以包含初始化,如有一个变量在声明中存在初始化式,那么变量的类型可以省略,变量将使用初始化式的常量类型。
var x, y, z int = 1, 2, 3 var c, python, java = true, false, "no!"以上变量定义代码 x,y,z均为int类型,其初始值分别是1,2,3,c,python是bool类型,初始值为true,false,java是string,值为"no!"
短变量声明:省略类型的变量可以使用更加简洁的代码,例如
c, python, java := true, false, "no!"省略关键字var 在赋值符号前加一个冒号":"
go 语言内置基本类型
bool string int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 uintptr byte // alias for uint8 rune // alias for int32 // represents a Unicode code point float32 float64 complex64 complex128
常量的声明像变量一样,在前面加上const 关键字,常量的声明可以是字符,字符串,布尔值以及数值类型,常量不能使用:=初始化
const Pi = 3.14而不能const Pi := 3.14
可以用括号声明一组常量
for循环
基本的for循环看起来和c,java差不多,只是去掉了括号:
for i := 0; i < 10; i++ {
sum += i
}第一个分号声明变量i并初始化为0,第二个语句定义循环结束条件,第三条语句定义循环结束后对循环因子的操作for代替while的行为
i:1
for i<100{
//dosomething
i++
}无条件循环while(true)
for{
//loop forever
}
if条件
if与for的情况差不多,均是省略了括号
if expression {
}if a>b{
}
else if a==b{
}else{
}if中也可以声明变量
if v := math.Pow(x, n); v < lim {
return v
}func foo(a,b int) int{
return math.Max(a,b)
}
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信1642 次点击
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
包(packages)
每个GO程序都有一个个包组成,程序由main包开始运行。
package main
func main(){
//do something
}导入(import)
go语言通过import关键字,将所需要使用的包引入到程序中,可以:
import( "fmt" "math/rand" )或者
import "fmt" import "math/rand"
函数(Functions)
一个函数可以有0个或多个参数。参数的类型在变量的后面声明,用空格隔开,函数的返回类型在括号后面声明,如果有多个返回值,则用括号括起,用逗号分割,例如
这个函数定义是这样的,函数名为foo,返回值为int 型,参数为a,b均是intint型 func是关键字,声明这是一个函数func foo(a,b int) int{
if a>b{
return a
}
return b
}参数类型的连续性:如果一个参数没有声明类型,那么这个参数的类型与下一个参数的类型相同
多返回值:go语言可以定义多个返回值,以尽可能的减少数据结构例如
func swap(x, y string) (string, string) {
return y, x
}从来没有如此简单的实现一个值交换预定义返回值变量,这样写出来的函数是如此优美并简单
func split(sum int) (x, y int) {
x = sum * 4 / 9
y = sum - x
return
}
变量(variables)
一个变量声明可以包含初始化,如有一个变量在声明中存在初始化式,那么变量的类型可以省略,变量将使用初始化式的常量类型。
var x, y, z int = 1, 2, 3 var c, python, java = true, false, "no!"以上变量定义代码 x,y,z均为int类型,其初始值分别是1,2,3,c,python是bool类型,初始值为true,false,java是string,值为"no!"
短变量声明:省略类型的变量可以使用更加简洁的代码,例如
c, python, java := true, false, "no!"省略关键字var 在赋值符号前加一个冒号":"
go 语言内置基本类型
bool string int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 uintptr byte // alias for uint8 rune // alias for int32 // represents a Unicode code point float32 float64 complex64 complex128
常量的声明像变量一样,在前面加上const 关键字,常量的声明可以是字符,字符串,布尔值以及数值类型,常量不能使用:=初始化
const Pi = 3.14而不能const Pi := 3.14
可以用括号声明一组常量
for循环
基本的for循环看起来和c,java差不多,只是去掉了括号:
for i := 0; i < 10; i++ {
sum += i
}第一个分号声明变量i并初始化为0,第二个语句定义循环结束条件,第三条语句定义循环结束后对循环因子的操作for代替while的行为
i:1
for i<100{
//dosomething
i++
}无条件循环while(true)
for{
//loop forever
}
if条件
if与for的情况差不多,均是省略了括号
if expression {
}if a>b{
}
else if a==b{
}else{
}if中也可以声明变量
if v := math.Pow(x, n); v < lim {
return v
}