如何在 Golang 中使用運算符

運算符是每種程式語言的基礎。因此,如果不使用運算符,Golang語言的功能是不完整的。運算符允許我們對操作數執行不同類型的操作。在 Go語言中,運算子可以根據其不同的功能進行分類

如何在 Golang 中使用運算符

算術運算符

Go 語言中使用這些運算子對運算元進行運算:

  • 加法:“+”將兩個操作數相加。例如:x+y。
  • 減法:“-”減去兩個操作數。例如:xy。
  • 乘法:「*」將兩個運算元相乘。例如:x*y。
  • 除法:「/」將第一個運算元除以第二個運算元。例如:x/y。
  • 餘數:'%' 運算子傳回第一個運算元除以第二個運算元後的餘數。例如:x%y。

 注意: -、+、!、&、*、<- 和 ^ 也稱為一元運算符,一元運算符的優先權更高。 ++ 和 — 運算子來自語句,它們不是表達式,因此它們位於運算子層次結構之外。

例如:

//Minh họa chương trình Go dùng toán tử số học
package main 

import "fmt"

func main() { 
p:= 34
q:= 20
	
// Phép cộng
result1:= p + q 
fmt.Printf("Result of p + q = %d", result1) 
	
// Phép trừ
result2:= p - q 
fmt.Printf("\nResult of p - q = %d", result2) 
	
// Phép nhân
result3:= p * q 
fmt.Printf("\nResult of p * q = %d", result3) 
	
// Division 
result4:= p / q 
fmt.Printf("\nResult of p / q = %d", result4) 
	
// Modulus 
result5:= p % q 
fmt.Printf("\nResult of p %% q = %d", result5) 
} 

結果:

Kết quả của p + q = 54
Kết quả của p - q = 14
Kết quả của p * q = 680
Kết quả của p / q = 1
Kết quả của p % q = 14

關係運算符

關係運算子用於比較兩個值。讓我們逐一看一下每個運算符:

  • 「==」(等於)運算子檢查兩個給定的運算元是否相等。如果相等,則傳回 true。否則,返回 false。例如,5==5 將傳回 true。
  • '!='(不等於)運算子檢查兩個給定的運算元是否相等。否則,傳回 true。否則,返回 false。這是“==”運算符的精確布林補碼。例如,5!=5 將傳回 false。
  • '>'(大於)運算子檢查第一個運算元是否大於第二個運算元。如果更大,則傳回 true。如果少於,則傳回 false。例如,6>5 將傳回 true。
  • '<'(小於)運算子檢查第一個運算元是否小於第二個運算元。如果較小,則傳回 true。如果不是,則傳回 false。例如,<5 將返回
  • '>='(大於等於)運算子檢查第一個運算元是否大於或等於第二個運算元。如果大於或等於,則傳回 true。如果小於或等於,則傳回 false。例如:5>=5 將傳回 true。
  • '<='(小於或等於)運算子檢查第一個運算元是否小於或等於第二個運算元。如果大於或等於,則傳回 true。如果小於或等於,則傳回 false。例如:<=5 也會返回

例如:

// Minh họa chương trình Go dùng toán tử quan hệ
package main 

import "fmt"

func main() { 
p:= 34
q:= 20
	
// ‘=='(Equal To) 
result1:= p == q 
fmt.Println(result1) 
	
// ‘!='(Not Equal To) 
result2:= p != q 
fmt.Println(result2) 
	
// ‘<‘(less than)="" result3:="p">< q="" fmt.println(result3)="" ‘="">'(Greater Than) 
result4:= p > q 
fmt.Println(result4) 
	
// ‘>='(Greater Than Equal To) 
result5:= p >= q 
fmt.Println(result5) 
	
// ‘<='(less than="" equal="" to)="" result6:="p"><= q="" fmt.println(result6)="" }="">

結果:

false
true
false
true
true
false

邏輯運算符

它們用於組合兩個或多個條件/約束或補充所考慮的初始條件的評估。

  • AND:當考慮的兩個條件都滿足時,「&&」運算子傳回 true。否則,返回 false。例如,當 a 和 b 都為真(即非零)時,a && b 傳回 true。
  • 或:運算子「||」當考慮的一個(或兩個)條件滿足時傳回 true。否則,返回 false。例如:a ||如果 a 或 b 為真(即非零),則 b 傳回 true。當然,當a和b都為真時,它會回傳true。
  • 邏輯非:'! '當考慮的條件不滿足時,運算子傳回 true。否則,返回 false。例如:如果 a 為假,即 a = 0,則 !a 傳回 true。

例如:

// Minh họa chương trình Go dùng toán tử logic
package main 
import "fmt"
func main() { 
	var p int = 23
	var q int = 60
		
	if(p!=q && p<=q){ fmt.println("true")="" }="" if(p!="q" ||=""><=q){ fmt.println("true")="" }="" if(!(p="=q)){" fmt.println("true")="" }="" }="">

結果:

True
True
True

位元運算符

Go語言中有6個位元運算符,它們在位元層級進行操作,或用於執行逐位運算。以下是位元運算子:

  • &(位元與):以兩個數字作為操作數,並對兩個數字的每一位執行「與」運算。只有當兩位均為 1 時,AND 的結果才為 1。
  • | (位元或):以兩個數字作為操作數,並對兩個數字的每一位執行或運算。若兩個位元中任一個為 1,則「或」的結果為 1。
  • ^(位元異或):以兩個數字作為操作數,並對兩個數字的每一位執行異或運算。如果兩位不同,則 XOR 的結果為 1。
  • <(左移):取兩個數字,將第一個操作數的位元左移,第二個操作數決定要移動的位數
  • >>(右移):取兩個數字,將第一個操作數的位元向右移動,第二個操作數決定要移動的位數。
  • &^(與非):這是一個明確的位元運算子。

例如:

// Minh họa chương trình Go dùng toán tử bitwise
package main 

import "fmt"

func main() { 
p:= 34
q:= 20
	
// & (bitwise AND) 
result1:= p & q 
fmt.Printf("Result of p & q = %d", result1) 
	
// | (bitwise OR) 
result2:= p | q 
fmt.Printf("\nResult of p | q = %d", result2) 
	
// ^ (bitwise XOR) 
result3:= p ^ q 
fmt.Printf("\nResult of p ^ q = %d", result3) 
	
// < (left="" shift)="" result4:="p">< 1="" fmt.printf("\nresult="" of="" p="">< 1="%d" ,"="" result4)="">> (right shift) 
result5:= p >> 1
fmt.Printf("\nResult of p >> 1 = %d", result5) 
	
// &^ (AND NOT) 
result6:= p &^ q 
fmt.Printf("\nResult of p &^ q = %d", result6) 
	
	
} 

結果:

Kết quả của p & q = 0
Kết quả của p | q = 54
Kết quả của p ^ q = 54
Kết quả của p < 1="68" kết="" quả="" của="" p="">> 1 = 17
Kết quả của p &^ q = 34

賦值運算符

賦值運算子用於為變數賦值。賦值運算子的左操作數是一個變量,賦值運算子的右操作數是一個值。右邊的值必須與左邊的變數具有相同的資料類型,否則編譯器將回傳錯誤。不同類型的賦值運算子如下所示:

  • 「=」(簡單賦值):這是最簡單的賦值運算子。此運算子用於將右邊的值賦給左邊的變數。
  • 「+=」(附加賦值):此運算子是運算子『+』和『=』的組合。這個運算子首先將左邊變數的目前值與右邊的值相加,然後將結果賦給左邊變數。
  • 「-=」(減號賦值):此運算子是運算子『-』和『=』的組合。此運算子首先從右側變數的值中減去左側變數的目前值,然後將結果賦給左側變數。
  • 「*=」(乘法賦值):此運算子是運算子『*』和『=』的組合。這個運算子首先將左邊變數的目前值乘以右邊的值,然後將結果賦給左邊變數。
  • 「/=」(除法賦值):此運算子是 '/' 和 '=' 運算子的組合。這個運算子先將左邊變數的目前值除以右邊的值,然後將結果賦給左邊變數。
  • 「%=」(餘數賦值):此運算子是『%』和『=』運算子的組合。此運算子首先根據右側的值取左側變數目前值的餘數,然後將結果賦給左側變數。
  • “&=”(位元與):此運算子是“&”和“=”運算子的組合。此運算子首先將左邊變數的目前值與右邊的值進行「位元與」運算,然後將結果賦給左邊變數。
  • “^=”(位元異或):此運算子是“^”和“=”運算符的組合。這個運算子首先將左邊變數的目前值與右邊變數的值進行“位元異或”,然後將結果賦給左邊變數。
  • 「|=」(位元或):此運算子是「|」的組合運算子和『=』。這個運算子首先將左邊變數的目前值與右邊變數的值進行“位元或”,然後將結果賦給左邊變數。
  • 「<=:此運算子是「<」和「=」運算子的組合。此運算子首先將左側變數的目前值「移動」右側的值,然後將結果賦給右側的變數。
  • “>>=”:此運算子是運算子“>>”和“=”的組合。此運算子首先將左邊變數的目前值與右邊的值進行「右移與」運算,然後將結果賦給左邊變數。

例如:

// Minh họa chương trình Go dùng toán tử gán
package main 
	
import "fmt"
	
func main() { 
var p int = 45
	var q int = 50
	
// “=”(Simple Assignment) 
p = q 
fmt.Println(p) 
	
// “+=”(Add Assignment) 
	p += q 
fmt.Println(p) 
	
//“-=”(Subtract Assignment) 
p-=q 
fmt.Println(p) 
	
// “*=”(Multiply Assignment) 
p*= q 
fmt.Println(p) 
	
// “/=”(Division Assignment) 
	p /= q 
fmt.Println(p) 
	
	// “%=”(Modulus Assignment) 
	p %= q 
fmt.Println(p) 
	
} 

結果:

50
100
50
2500
50
0

其他營運商

  • &:此運算子傳回變數的位址。
  • *:此運算子提供指向變數的指標。
  • <-:這個操作符的名稱是receive。它用於從
// Minh họa chương trình sử dụng toán tử khác
package main 
	
import "fmt"
	
func main() { 
a := 4
	
// Dùng địa chỉ của toán tử (&) toán tử trỏ gián tiếp (*)

b := &a 
fmt.Println(*b) 
*b = 7
fmt.Println(a) 
} 

結果:

4
7
Sign up and earn $1000 a day ⋙

Leave a Comment

Go 中的關鍵字

Go 中的關鍵字

關鍵字-關鍵字是語言中用於某些內在過程或代表某些預定義動作的字詞。以下是您需要了解的有關 Golang 中的關鍵字的知識。

Golang中的資料類型

Golang中的資料類型

資料類型指定有效的 Go 變數可以包含的資料類型。 Go語言中,類型分為以下四類:

Golang 中的函數參數

Golang 中的函數參數

Go 支援兩種主要的傳遞參數的方式:按值傳遞和按引用傳遞。 Go 預設使用按值傳遞。

Golang中傳回多個值的函數

Golang中傳回多個值的函數

在Go語言中,允許使用return語句從函數傳回多個值。換句話說,在函數中,一個return語句可以傳回多個值。

Go 中的 Switch 語句

Go 中的 Switch 語句

Golang 和大多數其他程式語言一樣,有 switch 語句。以下是如何在 Golang 中使用 switch 語句。

在 Golang 中使用選擇語句時需要了解的案例

在 Golang 中使用選擇語句時需要了解的案例

在本文中,我們將學習如何使用預設情況來避免死鎖。但首先,讓我們先了解一下使用 Golang select 指令時出現死鎖的情況是什麼?

Golang 中的匿名結構和字段

Golang 中的匿名結構和字段

Golang 中的匿名結構是沒有名稱的一次性臨時結構,而匿名欄位允許嵌入未命名的欄位。

如何在 Golang 中使用 Rune

如何在 Golang 中使用 Rune

Golang 中的 Runes 是什麼?如何在 Golang 中使用 Rune?文章會告訴你答案。

Golang 中的 Void 標識符

Golang 中的 Void 標識符

Golang 中的 _(底線)稱為空白標識符。標識符是程式組件的使用者定義名稱,用於識別目的。

如何用 Golang 創建基本程序

如何用 Golang 創建基本程序

你好世界!是任何程式語言中的第一個基本程式。您可以按照以下步驟使用 Golang 編寫第一個程式。

如何在 Windows 上安裝 Go

如何在 Windows 上安裝 Go

Golang 可以輕鬆安裝在 Windows 上。以下是在 Windows 上安裝 Golang 的詳細逐步指南。

Golang 中同名的方法

Golang 中同名的方法

Golang允許在同一個套件中建立兩個或多個同名的方法,但是這些方法的接收者必須是不同的類型。

Go 中的函數

Go 中的函數

在 Go 中,函數是執行特定任務的程式碼區塊,可以在整個程式中重複使用以節省記憶體、提高可讀性並節省時間。

Go 中的變數作用域

Go 中的變數作用域

Golang 中變數的範圍決定了程式中可存取該變數的部分。在 Go 中,所有標識符都有一個在編譯時確定的詞法作用域。

ChatGPT 全球崩潰

ChatGPT 全球崩潰

11月22日上午,OpenAI的ChatGPT聊天機器人出現大面積問題,全球眾多用戶無法使用這款AI應用。

如何使用WiFi分析儀來提升您的Wi-Fi連接

如何使用WiFi分析儀來提升您的Wi-Fi連接

僅僅購買新的 Wi-Fi 路由器並不足以增強您的網路。為了充分利用您的 Wi-Fi,您需要確保獲得最佳的範圍、訊號和頻率。

身體與我們溝通的方式常常被忽視

身體與我們溝通的方式常常被忽視

我們的身體就像機器,不斷發出訊號和訊息,但我們很少注意它們。讓我們看看我們的身體想透過下面的訊號告訴我們什麼。

世界上最高的陸地動物

世界上最高的陸地動物

世界上最高的動物是?本文將為您總結陸地上最大的動物。

計算機中的基本測量單位

計算機中的基本測量單位

位元 (Bit) 是二進位數字 (Binary Digit) 的縮寫,是電腦記憶體中最小單位的術語,可以儲存兩種資訊狀態之一:0 或 1(可以理解為電腦中電晶體的開啟或關閉狀態)。

如何利用提醒功能改善你的筆記習慣

如何利用提醒功能改善你的筆記習慣

良好的記憶習慣始於提醒——它們在正確的時間出現,捕捉那些轉瞬即逝的想法。

7 款免費應用,幫助你瞬間提升手機拍照質量

7 款免費應用,幫助你瞬間提升手機拍照質量

仍有許多免費且功能強大的攝影工具可用於增強您的照片。

讓 Google 搜尋小工具更實用的技巧

讓 Google 搜尋小工具更實用的技巧

Google 搜尋小工具可讓您快速存取 Google 搜尋和發現提要,以及語音搜尋和 Google Lens。

如何登入並關閉密碼過期提醒

如何登入並關閉密碼過期提醒

如果您在 Windows 登入畫面上看到「您的密碼已過期,必須變更」訊息,這是因為 Windows 本機帳戶的密碼預設每 42 天過期一次。

如何在 Chrome、Coc Coc 上將 WebP 圖片轉換為 PNG、JPG

如何在 Chrome、Coc Coc 上將 WebP 圖片轉換為 PNG、JPG

要將 WebP 圖像轉換為 PNG 和 JPG 格式,我們可以透過多種不同的方式來完成,例如直接在圖像 URL 上進行轉換或使用圖像轉換工具。

ChatGPT 畫布模式的 4 種使用方法

ChatGPT 畫布模式的 4 種使用方法

ChatGPT 的新 Canvas 模式為世界領先的生成式 AI 引擎中的寫作和編輯增添了新的維度。

人們最不喜歡人工智慧照片編輯器的地方

人們最不喜歡人工智慧照片編輯器的地方

雖然 AI 照片編輯器可以顯著簡化您的編輯工作流程,但它們還遠非完美。用戶不喜歡它們的一些方面,在今天的文章中,您將發現它們是什麼。

修復 Google Play Store 無法自動更新應用程式的問題

修復 Google Play Store 無法自動更新應用程式的問題

當 Play Store 不自動更新應用程式時,使用者可能會錯過新功能、安全性修補程式和錯誤修復。幸運的是,您可以按照以下步驟設定 Google Play 商店以自動更新您的應用程式。

任天堂透過虛擬遊戲卡徹底改變了數位遊戲的共享方式

任天堂透過虛擬遊戲卡徹底改變了數位遊戲的共享方式

任天堂在任天堂直面會上正式推出了虛擬遊戲卡系統,此舉徹底改變了數位遊戲的發行方式。

使用 Messenger 在手機和電腦上傳送文件的說明

使用 Messenger 在手機和電腦上傳送文件的說明

除了在 Messenger 上發送照片外,用戶現在還可以透過該應用程式向其他人發送文件,包括所有文件文件格式,例如 pdf、doc、xlx...