07-Go语言运算符

2018-10-15  本文已影响0人  低头看云

算术运算符

image
package main

import "fmt"

func main() {
    // Go语言算术运算符
    // 注意点: Go语言中必须相同类型才能进行运算
    /*
        +   相加
        -   相减
        *   相乘
        /   相除
        %   取余
        ++  自增
        --  自减
    */
    var num1, num2 = 8, 2
    // +
    var res int = num1 + num2
    // -
    var res1 int = num1 - num2
    // *
    var res2 int = num1 * num2
    // /
    var res3 int = num1 / num2
    // %
    var res4 int = num1 % num2
    // ++
    // 注意点: ++ 和 -- 都不可以前置, 而且必须独占一行
    num1++
    var res5 int = num1
    // --
    num1--
    var res6 int = num1

    fmt.Println(res)  // 10
    fmt.Println(res1) // 6
    fmt.Println(res2) // 16
    fmt.Println(res3) // 4
    fmt.Println(res4) // 0
    fmt.Println(res5) // 9
    fmt.Println(res6) // 8

}

关系运算符

image

逻辑运算符

image

&& 一假则假
|| 一真则真
! 真变假, 假变真

位运算符

image

赋值运算符

image
package main

import "fmt"

func main() {
    // Go语言中的赋值运算符和C语言一样
    //  = += *= /= %= &= |= ^= <<= >>=
    //  只不过新增了一个   &^=

    var num int
    num = 10
    num += 6  // 相当于 num = num + 6
    num -= 6  // 相当于 num = num - 6
    num *= 6  // 相当于 num = num * 6
    num /= 6  // 相当于 num = num / 6
    num %= 6  // 相当于 num = num % 6
    num &= 6  // 相当于 num = num & 6
    num |= 6  // 相当于 num = num | 6
    num <<= 6 // 相当于 num = num << 6
    num >>= 6 // 相当于 num = num >> 6
    num &^= 6 // 相当于 num = num &^ 6
    fmt.Println(num)

}

其他运算符

image
package main

import "fmt"

func main() {
    // & 取地址运算符
    // * 访问地址运算符

    var num int
    num = 10
    var p *int
    p = &num
    fmt.Println(p)  // p 里面存放的是地址
    fmt.Println(*p) // *p 里面存放的是p所指向的内存单元
}

上一篇 下一篇

猜你喜欢

热点阅读