继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

A Tour of Go: Basics 1

holdtom
关注TA
已关注
手记 1703
粉丝 240
获赞 991


Packages, variables and functions

Packages

packages中,以大写字母开头的name是exported name,当import package时,只有exported name可以被从外部访问。

Functions

同type的连续参数可以只在最后指明type。

函数可以有多个返回值。

func swap(x, y string) (string, string) {

        return y, x

}

Go支持有name的返回值:

函数定义时就定义好返回变量名,在函数内操作返回变量。

用naked return语句返回。

func split(sum int) (x, y int) {

        x = sum * 4 / 9

        y = sum - x

        return

}

注意点:文中建议只在短函数中这样使用,因为长了容易影响可读性。

Variables

var关键字定义变量。

有初始值时可以省略type。

技巧及注意点:

在函数内,可以使用:=符号替换有初始值的变量定义。

但是在函数外,所有语句必须以关键字开始,所以不能使用:=符号。

Basic types

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

技巧:

var和import都可以用小括号声明多个包或变量。

文中建议,如无特殊需求,使用int就好,不必指明size或sign。

变量定义时,如不指定初始值,则分配对应type的默认值。

numeric type: 0

bool: false

string: ""

表达式T(v)表示将值v转换成T类型:

var i = 10

var f = float64(i)

注意点:与C语言不同,Go必须显式转换。

常量定义将var换成const关键字即可,不过不能使用:=符号。

疑问

Numeric constants are high-precision values.

©著作权归作者所有:来自51CTO博客作者zxdevops的原创作品,如需转载,请注明出处,否则将追究法律责任


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP