Golangで演算子を使う方法

演算子はあらゆるプログラミング言語の基礎です。したがって、演算子を使用しないとGolang言語の機能は不完全になります。演算子を使用すると、オペランドに対してさまざまな種類の演算を実行できます。 Go 言語では、演算子はさまざまな機能に基づいて分類できます

Golangで演算子を使う方法

算術演算子

これらの演算子は、Go 言語でオペランドに対して演算を実行するために使用されます。

  • 加算: '+' は 2 つのオペランドを加算します。たとえば、x+y などです。
  • 減算: '-' は 2 つのオペランドを減算します。例: xy。
  • 乗算: '*' は 2 つのオペランドを乗算します。たとえば、x*y。
  • 除算: '/' は最初のオペランドを 2 番目のオペランドで割ります。たとえば、x/y などです。
  • 剰余: '%' 演算子は、最初のオペランドを 2 番目のオペランドで割ったときの剰余を返します。たとえば、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

関係演算子

関係演算子は 2 つの値を比較するために使用されます。各演算子を1つずつ見てみましょう。

  • 「==」(等しい) 演算子は、指定された 2 つのオペランドが等しいかどうかをチェックします。等しい場合は true を返します。それ以外の場合は false を返します。たとえば、5==5 は true を返します。
  • 「!=」(等しくない) 演算子は、指定された 2 つのオペランドが等しいかどうかをチェックします。それ以外の場合は true を返します。それ以外の場合は false を返します。これは '==' 演算子の正確なブール補数です。たとえば、5!=5 は false を返します。
  • 「>」(より大きい) 演算子は、最初のオペランドが 2 番目のオペランドより大きいかどうかをチェックします。大きい場合は true を返します。少ない場合は false を返します。たとえば、6>5 は true を返します。
  • 「<」(より小さい) 演算子は、最初のオペランドが 2 番目のオペランドより小さいかどうかをチェックします。小さい場合は true を返します。そうでない場合は false を返します。例えば、<5は以下を返します
  • 「>=」(より大きい)演算子は、最初のオペランドが 2 番目のオペランド以上であるかどうかをチェックします。より大きいか等しい場合は true を返します。以下の場合は false を返します。たとえば、5>=5 は true を返します。
  • 「<=」(以下) 演算子は、最初のオペランドが 2 番目のオペランド以下かどうかをチェックします。より大きいか等しい場合は 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

論理演算子

これらは、2 つ以上の条件/制約を組み合わせたり、検討中の初期条件の評価を補足したりするために使用されます。

  • AND: '&&' 演算子は、検討中の条件が両方とも満たされた場合に true を返します。それ以外の場合は false を返します。たとえば、a && b は、a と b の両方が true (つまり、ゼロ以外) の場合に true を返します。
  • OR: 演算子 '||'検討中の条件の 1 つ (または両方) が満たされた場合に true を返します。それ以外の場合は false を返します。たとえば: a || b は、a または b のいずれかが true (つまり、ゼロ以外) の場合に true を返します。もちろん、a と b の両方が true の場合は true を返します。
  • 論理否定: 「!」演算子は、検討中の条件が満たされない場合に true を返します。それ以外の場合は false を返します。たとえば、!a は a が false の場合、つまり a = 0 の場合に 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 つのビット演算子があります。ビット演算子は次のとおりです。

  • & (ビット単位の AND): 2 つの数値をオペランドとして取り、2 つの数値のすべてのビットに対して AND を実行します。両方のビットが 1 の場合のみ、AND の結果は 1 になります。
  • | (ビット単位の OR): 2 つの数値をオペランドとして取り、2 つの数値のすべてのビットに対して OR を実行します。 2 つのビットのいずれかが 1 の場合、OR の結果は 1 になります。
  • ^ (ビット単位の XOR): 2 つの数値をオペランドとして取り、2 つの数値のすべてのビットに対して XOR を実行します。 2 つのビットが異なる場合、XOR の結果は 1 になります。
  • < (左シフト): 2つの数値を受け取り、最初のオペランドのビットを左にシフトし、2番目のオペランドでシフトする位置の数を決定します。
  • >> (右シフト): 2 つの数値を取り、最初のオペランドのビットを右にシフトし、2 番目のオペランドによってシフトする位置の数を決定します。
  • &^ (AND NOT): これは明示的なビット演算子です。

例えば:

// 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

代入演算子

代入演算子は変数に値を割り当てるために使用されます。代入演算子の左オペランドは変数であり、代入演算子の右オペランドは値です。右側の値は左側の変数と同じデータ型である必要があります。そうでない場合、コンパイラはエラーを返します。さまざまな種類の代入演算子を以下に示します。

  • 「=(単純な代入)」:これは最も単純な代入演算子です。この演算子は、右側の値を左側の変数に割り当てるために使用されます。
  • 「+=」(追加代入):この演算子は、演算子 '+' と '=' の組み合わせです。この演算子は、まず左側の変数の現在の値を右側の値に追加し、その結果を左側の変数に割り当てます。
  • 「-=」(マイナス代入):この演算子は、演算子「-」と「=」の組み合わせです。この演算子は、まず左側の変数の現在の値を右側の変数の値から減算し、その結果を左側の変数に代入します。
  • 「*=」(乗算代入):この演算子は、演算子 '*' と '=' の組み合わせです。この演算子は、まず左側の変数の現在の値と右側の値を乗算し、その結果を左側の変数に割り当てます。
  • 「/=」(除算代入):この演算子は、「/」演算子と「=」演算子の組み合わせです。この演算子は、まず左側の変数の現在の値を右側の値で割り、その結果を左側の変数に代入します。
  • 「%=」(剰余代入): この演算子は '%' 演算子と '=' 演算子の組み合わせです。この演算子は、まず右側の値に基づいて左側の変数の現在の値の余りを取得し、その結果を左側の変数に割り当てます。
  • 「&=」(ビット AND): この演算子は、「&」演算子と「=」演算子の組み合わせです。この演算子は、まず左側の変数の現在の値と右側の値を「ビット単位の AND」で演算し、その結果を左側の変数に代入します。
  • “^=”(ビット排他的論理和): この演算子は '^' 演算子と '=' 演算子の組み合わせです。この演算子は、まず左側の変数の現在の値と右側の変数の値を「ビット排他的論理和」し、その結果を左側の変数に割り当てます。
  • “|=”(ビット包含OR): この演算子は '|' と '|' の組み合わせです。演算子と '='。この演算子は、まず左側の変数の現在の値と右側の変数の値を「ビット単位の包含的 OR」で演算し、その結果を左側の変数に割り当てます。
  • 「<=: この演算子は、< 演算子と '=" ' 演算子の組み合わせです。」この演算子は、まず左側の変数の現在の値を右側の値だけ「シフト」し、その結果を右側の変数に代入します。
  • 「>>=」: この演算子は、演算子 '>>' と '=' の組み合わせです。この演算子は、まず左側の変数の現在の値と右側の値を「右シフト AND」し、その結果を左側の変数に割り当てます。

例えば:

// 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 言語では、型は次の 4 つのカテゴリに分類されます。

Golangの関数の引数

Golangの関数の引数

Go は、引数を渡す方法として、値渡しと参照渡しという 2 つの主な方法をサポートしています。 Go では、デフォルトで値渡しが使用されます。

Golangで複数の値を返す関数

Golangで複数の値を返す関数

Go 言語では、return ステートメントを使用して関数から複数の値を返すことができます。つまり、関数では、 return ステートメントは複数の値を返すことができます。

GoのSwitch文

GoのSwitch文

Golang には他のほとんどのプログラミング言語と同様に switch ステートメントがあります。 Golang で switch ステートメントを使用する方法は次のとおりです。

Golangで選択文を使用する際に知っておくべきケース

Golangで選択文を使用する際に知っておくべきケース

この記事では、デッドロックを回避するために default case を使用する方法を学習します。しかし、まず、Golang の select コマンドを使用するときにデッドロックが発生するケースが何であるかを確認しましょう。

Golang の匿名構造体とフィールド

Golang の匿名構造体とフィールド

Golang の匿名構造体は、1 回限りの目的で使用される名前のない一時的な構造体ですが、匿名フィールドでは名前のないフィールドを埋め込むことができます。

GolangでRuneを使う方法

GolangでRuneを使う方法

Golang におけるルーン文字とは何ですか? Golang で Rune を使用するにはどうすればいいですか?この記事でその答えがわかります。

Golang の void 識別子

Golang の void 識別子

Golang では _(アンダースコア) は空白識別子と呼ばれます。識別子は、識別目的で使用されるプログラム コンポーネントのユーザー定義名です。

Golangで基本的なプログラムを作成する方法

Golangで基本的なプログラムを作成する方法

こんにちは世界!あらゆるプログラミング言語における最初の基本プログラムです。この最初のプログラムは、以下の手順に従って Golang で記述できます。

WindowsにGoをインストールする方法

WindowsにGoをインストールする方法

Golang は Windows に簡単にインストールできます。以下は、Windows に Golang をインストールするための詳細なステップバイステップ ガイドです。

Golangにおける同じ名前のメソッド

Golangにおける同じ名前のメソッド

Golang では、同じパッケージ内に同じ名前のメソッドを 2 つ以上作成できますが、これらのメソッドのレシーバーは異なる型である必要があります。

Goにおける変数のスコープ

Goにおける変数のスコープ

Golang における変数のスコープは、その変数にアクセスできるプログラムの部分を決定します。 Go では、すべての識別子にはコンパイル時に決定される語彙スコープがあります。

Golang の制御文 (if、if-else、Nested-if)

Golang の制御文 (if、if-else、Nested-if)

Golang にはどのような条件文がありますか? Go プログラミングで条件文を使用するにはどうすればよいでしょうか?一緒に調べてみましょう!

折りたたみ式スマホの予想外の8つの大きなデメリット

折りたたみ式スマホの予想外の8つの大きなデメリット

折りたたみ式の携帯電話がかなりクールであることは否定できません。しかし、しばらく使用してみると、このデバイスにはいくつかの癖があることがわかりました。折りたたみ式スクリーンの携帯電話の予想外の 5 つの主な欠点をご紹介します。

AdobeはPremiere ProにAIビデオ作成技術を導入します

AdobeはPremiere ProにAIビデオ作成技術を導入します

Adobe は AI ビデオ作成技術を新たな方法で大衆に提供したが、この技術を使った完成した映画はまだ作成されていない。

2025年4月の最新Genshin Impactコード

2025年4月の最新Genshin Impactコード

Genshin Impact 5.5 コードは、原始石、魔法の鉱物、経験値、その他多くの報酬との交換に役立ちます。

IPadをMacのディスプレイとして使う方法

IPadをMacのディスプレイとして使う方法

macOS Catalina と iPadOS には、iPad を Mac のセカンダリディスプレイとして使用できるように設計された Sidecar という新機能のサポートが含まれています。

壁紙 1280、美しい Nokia 1280 の携帯電話の壁紙

壁紙 1280、美しい Nokia 1280 の携帯電話の壁紙

これは Nokia 1280 の壁紙のセットです。1280 の壁紙やブリック フォンの壁紙を取得するためにテキストを送信したことがある場合は、これらの壁紙を見てみてください。

極超音速宇宙飛行機が時速11,115kmに到達

極超音速宇宙飛行機が時速11,115kmに到達

ヴィーナス・エアロスペース社は、最高速度マッハ9に相当する時速11,115キロに達することができる新型極超音速航空機「スターゲイザー」の初画像を公開した。

朝食にバナナを食べると、お腹の張りが軽減される

朝食にバナナを食べると、お腹の張りが軽減される

腹部膨満は誰にでも起こり得ます。幸いなことに、朝食は、腹部膨満感を軽減するのに役立つ食材を食事に加えるのに最適な時間です。その材料はバナナです。

OpenAI、ChatGPTのAI画像生成機能のメジャーアップデートを発表

OpenAI、ChatGPTのAI画像生成機能のメジャーアップデートを発表

OpenAIはChatGPTのAI画像生成機能の注目すべきアップグレードを正式に導入しました。これは、以前のDALL-Eのような別の画像生成モデルを使用する代わりに重要な前進です。

Deepseek、一般的なハードウェア構成で問題なく動作する無料の言語モデルv3をリリース

Deepseek、一般的なハードウェア構成で問題なく動作する無料の言語モデルv3をリリース

中国の AI スタートアップ企業 DeepSeek が、最新の大規模言語モデル (LLM) である DeepSeek-V3-0324 を正式にリリースしました。

Gboardを捨ててSamsungキーボードに切り替える理由

Gboardを捨ててSamsungキーボードに切り替える理由

Gboard は長い間、Android スマートフォンの定番キーボードでした。しかし、最近になって多くの人が Samsung キーボードに切り替え、後戻りしなくなりました。

恋人たちに贈る甘くロマンチックな週末の願い

恋人たちに贈る甘くロマンチックな週末の願い

甘くロマンチックな週末のお祝いを恋人に送りましょう。それらは単なる言葉やメッセージであっても、意味のある霊的な贈り物となり、あなたの関係を強化するのに役立ちます。

ハリー・ポッターのテレビシリーズが成功するには、以下の要素が必要です

ハリー・ポッターのテレビシリーズが成功するには、以下の要素が必要です

HBOのハリー・ポッターのリメイクは2026年に初公開される予定です。テレビ版ハリー・ポッターの成功の理由は次のとおりです。

世界各地のスーパームーンの素晴らしい写真

世界各地のスーパームーンの素晴らしい写真

美しい月の写真はインターネット上では珍しくありません。この記事では、世界で最も美しい月の写真をまとめて紹介します。

AMD Ryzenユーザーは、無料でパフォーマンス向上を図るためにこのBIOSアップデートをインストールすべきです

AMD Ryzenユーザーは、無料でパフォーマンス向上を図るためにこのBIOSアップデートをインストールすべきです

現在、AMD は、パフォーマンスが低迷している主力 CPU ラインの問題に対処するため、1 秒あたりのフレーム数を数フレーム向上できる新しいアップデートを発表しました。

Xの価値は440億ドルから100億ドル以下に下落

Xの価値は440億ドルから100億ドル以下に下落

2022年10月、イーロン・マスクはXを買収するために440億ドルを費やしたが、現在までに同プラットフォームの価値は78.6%下落して約94億ドルとなっている。