C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#の代入演算子の使い方を解説!全種類の一覧とサンプルコード

C#で変数に値を格納するには、代入演算子を使用します。「=」のような基本的な演算子に加えて、四則演算やビット演算と代入を同時に行える複合代入演算子も用意されており、コードをより簡潔に記述できます。

C#の代入演算子一覧

C#で利用できる主な代入演算子は以下の通りです。

演算子説明使用例
=単純代入演算子。右側の値を左側の変数に代入するC = A + B は A + B の計算結果を C に代入
+=加算代入演算子。左オペランドに右オペランドを加算し、結果を左オペランドに代入するC += A は C = C + A と同等
-=減算代入演算子。左オペランドから右オペランドを減算し、結果を左オペランドに代入するC -= A は C = C - A と同等
*=乗算代入演算子。左オペランドに右オペランドを乗算し、結果を左オペランドに代入するC *= A は C = C * A と同等
/=除算代入演算子。左オペランドを右オペランドで除算し、結果を左オペランドに代入するC /= A は C = C / A と同等
%=剰余代入演算子。2つのオペランドの剰余(余り)を求め、結果を左オペランドに代入するC %= A は C = C % A と同等
<<=左シフト代入演算子。指定したビット数だけ左にシフトして代入するC <<= 2 は C = C << 2 と同等
>>=右シフト代入演算子。指定したビット数だけ右にシフトして代入するC >>= 2 は C = C >> 2 と同等
&=ビットごとのAND代入演算子C &= 2 は C = C & 2 と同等
^=ビットごとの排他的OR(XOR)代入演算子C ^= 2 は C = C ^ 2 と同等
|=ビットごとの包括的OR代入演算子C |= 2 は C = C | 2 と同等

代入演算子のサンプルコード

以下は、各代入演算子の動作を確認できるC#のサンプルプログラムです。

using System;

namespace OperatorsAppl {

    class Program {

        static void Main(string[] args) {
            int a = 21;
            int c;

            // 単純代入
            c = a;
            Console.WriteLine("代入演算子 = : {0}", c);

            // 加算代入
            c += a;
            Console.WriteLine("+= の値: {0}", c);

            // 減算代入
            c -= a;
            Console.WriteLine("-= の値: {0}", c);

            // 乗算代入
            c *= a;
            Console.WriteLine("*= の値: {0}", c);

            // 除算代入
            c /= a;
            Console.WriteLine("/= の値: {0}", c);

            // 剰余代入
            c = 200;
            c %= a;
            Console.WriteLine("%= の値: {0}", c);

            // 左シフト代入
            c <<= 2;
            Console.WriteLine("<<= の値: {0}", c);

            Console.ReadLine();
        }
    }
}

実行結果

代入演算子 = : 21
+= の値: 42
-= の値: 21
*= の値: 441
/= の値: 21
%= の値: 11
<<= の値: 44

サンプルコードの解説

このプログラムでは、まず変数 a に 21 を代入し、その後 c に対して各代入演算子を順番に適用しています。

  • c = a; … a の値 21 をそのまま c に代入
  • c += a; … 21 + 21 = 42
  • c -= a; … 42 - 21 = 21
  • c *= a; … 21 × 21 = 441
  • c /= a; … 441 ÷ 21 = 21
  • c %= a; … 200 % 21 = 11(200 を 21 で割った余り)
  • c <<= 2; … 11 を 2 ビット左シフトすると 44

このように、複合代入演算子を使えば「計算して代入」という処理を1行で簡潔に表現できます。特にループ処理でのカウンタ更新など頻繁に登場するパターンなので、しっかり覚えておきましょう。

  1. MacでVRを使う方法とは?SteamVR対応やGPUエンクロージャなど最新情報を解説

    世界的に人気を博すHTC ViveやOculus Riftが世界各地で購入可能になった今、多くのMacユーザーが「MacでもVRは使えるのか?使えるならどうやって?」と疑問を抱いています。 かつてOculusのCEOパーマー・ラッキー氏は、「現行のどのMacBookもOculus Riftを動かすには性能が足りない」と発言していました。そこで今回は、MacでVRを動かす可能性について調査しました。結論から言うと、状況は決して明るいものではありません。詳しく見ていきましょう。 関連記事:Apple製VRヘッドセットの発売日に関する噂 MacでVRは使えるのか? 技術的にはMacでVRを動かすこと

  2. Rubyの三項演算子(?:)の使い方を徹底解説!基本構文から注意点まで

    Rubyの三項演算子とは? 三項演算子は「3つの部分」で構成される演算子で、「三項(ternary)」という名前もここから来ています。具体的には、条件式と2つの結果候補から成り立ちます。 つまり、三項演算子を使えば、通常複数行になるif/else文をたった1行のコンパクトなコードにまとめられるのです。 例えば、次のようなコードが… 1 :eat_apple else :buy_apple end このように書けます: 1 ? :eat_apple : :buy_apple これが三項演算子の力です。 では、具体的にどのように動作するのか、正しい構文はどうなっているのかを見ていき