golang

go基本类型和运算符

2018-11-01  本文已影响23人  imuzi

bool

一个简单的列子:

var a bool = ture

bool值只有false和true。两个相同的类型之间可以通过 == 或者 != 来比较获取一个bool值。

比如:

var a = 1
a == 5 //false
a == 1 //true
a != 2 //true
a != 1 //false

go对于值之间的比较非常严格,只有两个相同的类型的值才可以进行比较。如果其中一个值是常量,那么另外一个的值必须是跟该常量类型兼容。
bool的常量和变量也可以通过逻辑运算符 非!和&& 或|| 结合来产生出另一个bool值。

好的命名可以提升代码的可读性 ,对于bool的值,例如is或者Is开开头的IsSorted。

数字类型

整型int和浮点型float

整数:

无符号整数:

浮点型(IEEE-754 标准):

go中没有float类型,整型的零值为0,浮点型的零值为0.
float32精确到小数点后7位,float64精确到小数点15位。所以在比较浮点数时需要非常小心。

开发中尽量使用float64,因为math包中所有关于数学运算的函数都会要求接收这个类型。

go不允许不同类型之间的混合使用,但是对于常量的限制非常少,所以允许常量之间的混合使用。

package main

func main() {
    var a int
    var b int32
    a = 15
    b = a + a //错误
    b = b + 5 //5是常量
}

复数

go有两种复数:

complex64
complex128

复数用re+imI来表示,re代表实数部分,im代表虚数部分,I代表根号负1。

运算符

逻辑运算符

== , !=, < , <=, > ,>=

算数运算符

二元运算符 + - * /
取余 %
自增自减 (+=, ++) -= *= /= %=

运算符优先级

优先级   运算符
 7      ^ !
 6      * / % << >> & &^
 5      + - | ^
 4      == != < <= >= >
 3      <-
 2      &&
 1      ||

类型别名

当你在使用某个类型时,你可以给他另起一个名字,然后使用这个新名字。

package main

import "fmt"

type newint int

func main() {
    var a newint = 2
    c := a + 2
    fmt.Println("c = %d", c)
}
image

微信搜索「goentry-xyz」,关注公众号「灯下独码」

上一篇 下一篇

猜你喜欢

热点阅读