欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

GO 之運(yùn)算符號的具體使用

 更新時間:2025年06月26日 08:48:23   作者:唯獨(dú)不開心  
這篇文章主要介紹了GO運(yùn)算符號的具體使用,包括算術(shù)、一元、關(guān)系、邏輯、位運(yùn)算及賦值運(yùn)算符,感興趣的可以了解一下

算術(shù)運(yùn)算符:

二元的運(yùn)算符:+ - * / %

四則運(yùn)算沒啥好說的,從小就開始學(xué)習(xí),最后一個 % 表示 求余數(shù)或者取模運(yùn)算。

package main


import "fmt"

func main() {
    a := 1 + 2
    b := a - 1
    c := a * b
    d := c / a
    e := c % 3
    fmt.Println("a := 1 + 2 的結(jié)果是:", a)
    fmt.Println("b := a - 1 的結(jié)果是:", b)
    fmt.Println("c := a * b 的結(jié)果是:", c)
    fmt.Println("d := c / a 的結(jié)果是:", d)
    fmt.Println("e := c % 3 的結(jié)果是:", e)
}

一元運(yùn)算符:++ -- 

  • 自增(++:將變量的值增加 1。

  • 自減(--:將變量的值減少 1。

  • 它們只能作為獨(dú)立的語句使用,不能出現(xiàn)在表達(dá)式中。例如,a = b++ 或 c = --d 這樣的寫法在 Go 語言中是不允許的。

package main


import "fmt"

func main() {
    var i int = 1

    i++
    fmt.Println("i++ 的結(jié)果:", i)

    i--
    fmt.Println("i-- 的結(jié)果:", i)
}

關(guān)系運(yùn)算符

關(guān)系運(yùn)算符是用于比較兩個操作數(shù)的值,并返回一個布爾值。

package main


import "fmt"


func main() {
    var a int = 10
    var b int = 20

    fmt.Println("a == b : ", a, b, a == b)
    fmt.Println("a != b : ", a, b, a != b)
    fmt.Println("a > b : ", a, b, a > b)
    fmt.Println("a < b : ", a, b, a < b)
    fmt.Println("a >= b : ", a, b, a >= b)
    fmt.Println("a <= b : ", a, b, a <= b)
}

邏輯運(yùn)算符

邏輯運(yùn)算符的操作數(shù)是布爾表達(dá)式,即表達(dá)式的結(jié)果是 true 或 false。C語言里面,表達(dá)式的值如果是零值則為false,非零值則為true。在這里行不通了,必須是操作的必須是布爾表達(dá)式,不能直對一個變量進(jìn)行判斷了?。?!

package main

import "fmt"


func main() {
    a := true
    b := false
    c := true
    d := false

    
    fmt.Println("邏輯與(&&)運(yùn)算:")
    fmt.Println(a, b, a && b)
    fmt.Println(a, c, a && c)
    fmt.Println(a, d, a && d)
    fmt.Println(b, d, b && d)

    fmt.Println("邏輯或(||)運(yùn)算:")
    fmt.Println(a, b, a || b)
    fmt.Println(a, c, a || c)
    fmt.Println(a, d, a || d)
    fmt.Println(b, d, b || d)

    fmt.Println("邏輯非(!)運(yùn)算:")
    fmt.Println(a, !a)
    fmt.Println(b, !b)
}

位運(yùn)算符 

位運(yùn)算就是將一個變量存放的數(shù)值轉(zhuǎn)換成二進(jìn)制的01表示的形式,然后再對每一個二進(jìn)制位進(jìn)行計(jì)算。主要包括 按位與(&)、按位或(|)、按位(^) 和 位清空(&^)。

  • 按位與(&) :相同位置的二進(jìn)制數(shù)值,全為1,則值為1,否則為 0
  • 按位或(|):相同位置的二進(jìn)制數(shù)值,全為0,則值為0,否則為 1
  • 按位(^):相同位置的二進(jìn)制數(shù)值,不同,則值為1,否則為 0
  • 按位清空(&^):

第一種解釋方法:

這里其實(shí)有個概念我給補(bǔ)充一下,=前面的值可以成為原始值,后面的值成為掩碼,這么一來就好解釋了。對于掩碼來說如果二進(jìn)制位的值為 0, 則取原始值對應(yīng)的二進(jìn)制位的數(shù)值,如果為1,則對應(yīng)位的值為0

第二種解釋方法:

我自己親自計(jì)算了幾次結(jié)果都正確,數(shù)值及算法,幫助理解。

a &^ = b 相當(dāng)于 a = a & b ^ a 也相當(dāng)于 a ^ b & a

package main

import "fmt"


func main() {
    a := 10
    b := 11
    fmt.Println(a, " & ", b, "=", a & b)
    fmt.Println(a, " | ", b, "=", a | b)
    fmt.Println(a, " ^ ", b, "=", a ^ b)
    fmt.Println(a, " &^ ", b, "=", a &^ b)
}

賦值運(yùn)算符

賦值運(yùn)算符是最常用的運(yùn)算符了,其功能就是修改已經(jīng)聲明過的變量所存放的內(nèi)容。賦值運(yùn)算符也有很多結(jié)合算術(shù)、邏輯、位運(yùn)算符的用法,思路都是一樣的,以 += 為例。例如計(jì)算 a += 1, 可以等價于 a = a + 1,即先計(jì)算 a + 1 的值,再將 a + 1 的結(jié)果,放入 a 中。

package main

import "fmt"


func main() {
    var a int
    a = 10
    fmt.Println("執(zhí)行 a = 10 后 : a = ", a)
    a += 10
    fmt.Println("執(zhí)行 a += 10 后 : a = ", a)
    a -= 1
    fmt.Println("執(zhí)行 a -= 1 后 : a = ", a)
    a *= 2
    fmt.Println("執(zhí)行 a *= 2 后 : a = ", a)
    a /= 3
    fmt.Println("執(zhí)行 a /= 3 后 : a = ", a)
    a %= 10
    fmt.Println("執(zhí)行 a %= 10 后 : a = ", a)
    a <<= 1
    fmt.Println("執(zhí)行 a <<= 1 后 : a = ", a)
    a >>= 1
    fmt.Println("執(zhí)行 a >>= 1 后 : a = ", a)
    a &= 10
    fmt.Println("執(zhí)行 a &= 10 后 : a = ", a)
    a |= 10
    fmt.Println("執(zhí)行 a |= 10 后 : a = ", a)
    a ^= 10
    fmt.Println("執(zhí)行 a %= 10 后 : a = ", a)
    a %= 10
    fmt.Println("執(zhí)行 a %= 10 后 : a = ", a)
    a %= 10
    fmt.Println("執(zhí)行 a %= 10 后 : a = ", a)

}

到此這篇關(guān)于GO 之運(yùn)算符號的具體使用的文章就介紹到這了,更多相關(guān)GO 運(yùn)算符號內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Go?文件讀取和寫入操作全面講解

    Go?文件讀取和寫入操作全面講解

    這篇文章主要為大家介紹了Go文件的讀取和寫入操作示例的全面詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • Go中的函數(shù)選項(xiàng)模式(Functional Options Pattern)詳解

    Go中的函數(shù)選項(xiàng)模式(Functional Options Pattern)詳解

    在 Go 語言中,函數(shù)選項(xiàng)模式是一種優(yōu)雅的設(shè)計(jì)模式,用于處理函數(shù)的可選參數(shù),本文將對其進(jìn)行講解,準(zhǔn)備好了嗎,快跟隨著本文一探究竟吧
    2023-06-06
  • go語言打包的網(wǎng)頁wasm示例詳解

    go語言打包的網(wǎng)頁wasm示例詳解

    這篇文章主要為大家介紹了go打包網(wǎng)頁wasm示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>
    2022-09-09
  • Go語言JSON解析器gjson使用方法詳解

    Go語言JSON解析器gjson使用方法詳解

    這篇文章主要介紹了Go語言json解析框架與gjson,JSON?解析是我們不可避免的常見問題,在Go語言中,我們可以借助gjson庫來方便的進(jìn)行json屬性的提取與解析,需要的朋友可以參考一下
    2022-12-12
  • 簡單易用的Go逗號comma ok模式使用詳解

    簡單易用的Go逗號comma ok模式使用詳解

    這篇文章主要為大家介紹了簡單易用的Go逗號comma ok模式使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • 利用Golang實(shí)現(xiàn)對配置文件加密

    利用Golang實(shí)現(xiàn)對配置文件加密

    在實(shí)際的應(yīng)用中,配置文件通常包含了一些敏感的信息,如數(shù)據(jù)庫密碼、API密鑰等,為了保護(hù)這些敏感信息不被惡意獲取,我們可以對配置文件進(jìn)行加密,本文將介紹如何使用Go語言實(shí)現(xiàn)對配置文件的加密,需要的朋友可以參考下
    2023-10-10
  • go語言中結(jié)構(gòu)體tag使用小結(jié)

    go語言中結(jié)構(gòu)體tag使用小結(jié)

    Go語言是一種靜態(tài)類型、編譯型的編程語言,其中結(jié)構(gòu)體是一種非常重要的數(shù)據(jù)類型,本文就來介紹一下go語言中結(jié)構(gòu)體tag使用,具有一定的參考價值,感興趣的可以了解一下
    2023-10-10
  • Go中的應(yīng)用配置管理詳解

    Go中的應(yīng)用配置管理詳解

    這篇文章主要為大家介紹了Go中的應(yīng)用配置管理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • 詳解Go如何基于現(xiàn)有的context創(chuàng)建新的context

    詳解Go如何基于現(xiàn)有的context創(chuàng)建新的context

    在?Golang?中,context?包提供了創(chuàng)建和管理上下文的功能,那么在GO語言中如何基于現(xiàn)有的context創(chuàng)建新的context,下面小編就來和大家詳細(xì)聊聊
    2024-01-01
  • Golang并發(fā)發(fā)送HTTP請求的各種方法

    Golang并發(fā)發(fā)送HTTP請求的各種方法

    在 Golang 領(lǐng)域,并發(fā)發(fā)送 HTTP 請求是優(yōu)化 Web 應(yīng)用程序的一項(xiàng)重要技能,本文探討了實(shí)現(xiàn)此目的的各種方法,從基本的 goroutine 到涉及通道和sync.WaitGroup 的高級技術(shù),需要的朋友可以參考下
    2024-02-02

最新評論