Go语言中,除非代码写在同一行,需要使用分号;隔开,一般情况下不需要使用分号;Go有着类C语言的语法
Go语言同其他语言不通的地方是变量类型写在变量后面 在C语言中定义变量如下:
int a;Go语言定义变量如下:
var a int当定义了一个变量后,它默认赋值为其类型的null值。如果定义var a int,则a的默认值为0。如果定义var s string,则s默认为空字符串”“。
在Go中,声明和赋值是两个过程,但可以连在一起做,
var a inta = 5或者如下,一步完成声明和赋值(这种形式只可以用在函数内),这种情况下,类型是由值推演出来的。
a := 5多个声明可以成组 比如:
var ( a int b bool)//类型相同的多个变量可以放在同一行var ( a,b int )//可以平行赋值,如下赋值后,a的值为20,b的值为15a,b := 20,15一个特殊的变量 _ ,任何赋给它的值都会被抛弃。
_,a = 20,15//此时a的值为15,20被抛弃布尔类型 bool 内建类型,值为true或者false
数值类型 熟知的如int
常量,在Go中,就是constant。它的值在编译时被创建,其值只能是数字、字符串和布尔值。const a = 40,可以用itoa生成枚举。
const ( a = itoa b = itoa)//也可以写成const( a = itoa b <---b的值自动为增1)也可以明确指定常量的类型:
const ( a = 0 <--- a为int b string = "0")字符串,内建类型,Go中的字符串用双引号引起来。 s := “a string”
用单引号引起来的是字符(utf8编码),字符不是string类型。
Go中的字符串一经创建就不可改变。
多行字符串:
s := "some string" + "some string"//原始字符串s := `this is a orig string`复数 Go原生支持复数,类型complex128 (64位虚数部分),小一点的还有complex64(32位虚数部分)
错误 内建类型 error ,error类型是一个接口 var e error e的值为nil
Go关键字
break default func interface select case defer go map struct chan else goto package switch const fallthrough if range type continue for import return var
新闻热点
疑难解答