这篇文章主要介绍了golang如何运算的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇golang如何运算文章都会有所收获,下面我们一起来看看吧。
一、Go语言的运算符
Go语言中的运算符和其他语言类似,主要包括:
算术运算符:+、-、*、/、%;
关系运算符:==、!=、>、<、>=、<=;
逻辑运算符:&&、||、!;
位运算符:&、|、^、<<、>>;
赋值运算符:=、+=、-=、*=、/=、%=、&=、|=、^=、<<=、>>=;
其他运算符:&、*、<-。
二、数值运算
整数的运算
Go语言支持各种类型的整数运算,包括添加(+)、减去(-)、乘以(*)、除以(/)和求余数(%)等。可以使用下面的代码来对两个整数进行求和:
package main
import "fmt"
func main() {
    var a int = 21
    var b int = 10
    var c int
    c = a + b
    fmt.Printf("a + b 的值为: %d
", c )
    c = a - b
    fmt.Printf("a - b 的值为:%d
", c )
    c = a * b
    fmt.Printf("a * b 的值为:%d
", c )
    c = a / b
    fmt.Printf("a / b 的值为:%d
", c )
    c = a % b
    fmt.Printf("a %% b 的值为:%d
", c )
}浮点数的运算
Go语言也支持浮点运算,包括加、减、乘、除和求余数等。我们可以使用下面的代码来验证:
package main
import "fmt"
func main() {
    var a float32 = 10.0
    var b float32 = 3.0
    fmt.Printf("a + b = %f
",a+b)
    fmt.Printf("a - b = %f
",a-b)
    fmt.Printf("a * b = %f
",a*b)
    fmt.Printf("a / b = %f
",a/b)
    fmt.Printf("a %% b = %f
",a%b)
}三、逻辑运算
Go语言中的逻辑运算符主要包括与(&&)、或(||)和非(!)。下面是一个简单的例子:
package main
import "fmt"
func main() {
    var a bool = true
    var b bool = false
    if (a && b) {
        fmt.Println("a && b 是 true")
    } else {
        fmt.Println("a && b 是 false")
    }
    if (a || b) {
        fmt.Println("a || b 是 true")
    } else {
        fmt.Println("a || b 是 false")
    }
    if (!a) {
        fmt.Println("!a 是 true")
    } else {
        fmt.Println("!a 是 false")
    }
}四、其他运算
Go语言中还有一些其他运算符,如下所示:
取指针地址运算符:&
package main
import "fmt"
func main() {
    a := 10
    fmt.Printf("a 变量的地址是:%x
", &a )
}取指针所指对象的值运算符:*
package main
import "fmt"
func main() {
    var a int = 10
    var ip *int
    ip = &a
    fmt.Printf("变量a= %d
", a)
    fmt.Printf("指针变量 *ip= %d
", *ip)
}通道的发送/接收操作符:<-
package main
import "fmt"
func main() {
    var ch chan int
    ch = make(chan int)
    go func() {
        ch <- 2
    }()
    var value int
    value = <-ch
    fmt.Println(value)
}