标签:str point oat 1.0 第一个 切片 次方 指针类型 pack
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 |
1 | 布尔型 | 只能是常量true或false |
2 | 数字类型 | 整形int或浮点数float GO支持整形和浮点数型数字,并且原生支持复数,其中位运算采用补码 |
3 | 字符串类型 | Go的字符串是由单个字节连接起来的,字节使用UTF-8编码标识的Unicode文本 |
4 | 派生类型 |
|
var identifier type
var v_name v_tpye
v_name = value
var v_name = value
v_name := value
//例如
var a int = 10
var b = 10
C := 10
//类型相同多个变量, 非全局变量
var vname1, vname2, vname3 type
vname1, vname2, vname3 = v1, v2, v3
var vname1, vname2, vname3 = v1, v2, v3 //和python很像,不需要显示声明类型,自动推断
vname1, vname2, vname3 := v1, v2, v3 //出现在:=左侧的变量不应该是已经被声明过的,否则会导致编译错误
// 这种因式分解关键字的写法一般用于声明全局变量
var (
vname1 v_type1
vname2 v_type2
)
多变量在同一行进行赋值
a, b, c = 5, 7, "abc"
多变量在同一行进行定义
c, d, d = 5, 7, "abc"
const identifier [typr] = value
显式类型定义: const b string = "abc"
隐式类型定义: const b = "abc"
特殊常量,在每一个const关键字出现的时候,被重置为0,然后再在一个const出现之前,每一次出现iota,其所代表的数字都会加1
const (
a = iota
b
c
)
+ | - | * | / | % | ++ | -- |
== | != | > | < | >= | <= |
&& | || | ! |
& | 按位与运算符"&"是双目运算符。 其功能是参与运算的两数各对应的二进位相与。 | (A & B) 结果为 12, 二进制为 0000 1100 |
| | 按位或运算符"|"是双目运算符。 其功能是参与运算的两数各对应的二进位相或 | (A | B) 结果为 61, 二进制为 0011 1101 |
^ | 按位异或运算符"^"是双目运算符。 其功能是参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1。 | (A ^ B) 结果为 49, 二进制为 0011 0001 |
<< | 左移运算符"<<"是双目运算符。左移n位就是乘以2的n次方。 其功能把"<<"左边的运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。 | A << 2 结果为 240 ,二进制为 1111 0000 |
>> | 右移运算符">>"是双目运算符。右移n位就是除以2的n次方。 其功能是把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数。 | A >> 2 结果为 15 ,二进制为 0000 1111 |
= | += | -= | /= | %= |
<<= | >>= | &= | ^= | |= |
& | 返回变量地址 |
* | 指针变量 |
7 | ^ ! |
6 | * / % << >> & &^ |
5 | + - | ^ |
4 | == != < <= >= > |
3 | <- |
2 | && |
1 | || |
Go语言类型转换的基本格式如下
tpye_name(expression)
tpye_neme为类型, expression为表达式
例如:
var sum int = 17
float32(sum)
标签:str point oat 1.0 第一个 切片 次方 指针类型 pack
原文地址:http://www.cnblogs.com/luckybookmarks/p/7204485.html