Top > .NET Visual C#言語入門 > 式(演算子)
プログラム構造 列挙型(enum) コンストラクタ・デストラクタ
スケルトン 配列 メソッド
クラス内の記述構成 構造体 プロパティ
HalloWorld 修飾子 静的クラスと静的メンバ
コマンドライン引数 プリプロセッサ ディレクティブ フィールド
コメント 例外と例外処理 演算子のオーバーロード
ステートメント(文) 可変個引数リスト(params) イベント(割り込み)
式(演算子) 名前空間 デリゲート
変数とデータ型 クラスとオブジェクト インデクサ
型変換(キャスト) クラス(class) デリゲート&イベント発生と受信サンプル
定数(Const/Readonly) 部分クラス定義  
文字列(string) 継承  

式(演算子)

  • C#には、以下の演算子が用意されています。
  • 演算子とは、式で実行する演算を指定する記号のことです。
  • 演算子の多くはオーバーロードできるため、ユーザー定義型に適用された演算子は意味が変わります。 「演算子のオーバーロード」を参照。
演算子
演算子のカテゴリ 演算子(MSDNへリンク)
算術 + (加算) - (減算) * (乗算) / (除算) % (剰余)
論理 (ブール) ! (論理否定) && (AND) || (OR) true (真) false (偽)
論理 (ビットごと) & (AND) | (OR) ^ (排他的OR) ~ (ビット反転)
文字列の連結 + (連結)
インクリメント、デクリメント ++ (1インクリメント) -- (1デクリメント)
関係演算 == (等値) != (非等値) < (より小さい)  > (より大きい)
<= (より小さいか等しい)  >= (より大きいか等しい)
シフト << (左シフト)  >> (右シフト)
代入 = (代入)  += (加算代入)  -= (減算代入)  *= (乗算代入)
/= (除算代入)  %= (剰余代入)
<<= (左シフト代入)  >>= (右シフト代入)  ??
メンバ・アクセス (.) ドット演算子
添字(「配列」を参照) []
キャスト(「型変換」を参照) ()
条件 ?: (条件演算子) C,C++では、3項演算子と呼ばれている。
デリゲートの連結と削除 +   -
オブジェクト作成 new
型情報 as   is   sizeof   typeof
オーバーフローの例外制御 checked   unchecked
間接およびアドレス *   ->   []   &

算術

// 算術

int Value = 0;

Value = 100 + 10; // + (加算)
Value = 100 - 10; // - (減算)
Value = 100 * 10; // * (乗算)
Value = 100 / 10; // / (除算)
Value = 100 % 10; // % (剰余)

論理 (ブールおよびビットごと)

// 論理(ブール)

int  Value1 = 100;
int  Value2 = 200;
bool bValue = true;

if (!(Value1 == Value2))               // ! (論理否定)
if (Value1 == 100 && Value2 == 200)    // && (AND)
if (Value1 == 100 || Value2 == 100)    // || (OR)
if (bValue == true)                    // true (真)
if (!bValue == false)                  // false (偽)

// 論理(ビット)

int  Value1 = 100;
int  Value2 = 200;
bool bValue = true;

Value1 = Value2 & 0xff00; // & (AND)        マスク
Value1 = Value2 & 0xff00; // | (OR)         合成
Value1 = Value2 ^ 0xff00; // ^ (排他的OR)   
Value1 = ~Value2;         // ~ (ビット反転)

& (AND) | (OR) ^ (排他的OR) ~ (ビット反転)文字列の連結

文字列の連結

string Text = "開始" + "~" + "終了" // + (連結) 

インクリメント、デクリメント

インクリメント、デクリメント

int Count = 0;

Count++;    // ++ (1インクリメント)
Count--;    // -- (1デクリメント)

++Count;    // ++ (1インクリメント)
--Count;    // -- (1デクリメント)

関係演算

関係演算

int  Value1 = 100;
int  Value2 = 200;

if (Value1 == Value2)    // == (等値)
if (Value1 != Value2)    // != (非等値)
if (Value1 < Value2)     // < (より小さい)
if (Value1 > Value2)     // > (より大きい)
if (Value1 <= Value2)    // <= (より小さいか等しい)
if (Value1 >= Value2)    // >= (より大きいか等しい)

シフト (指定方向へ指定ビット数移動する)

シフト

int Value = 0x0a0a;
int ShiftAns = 0;

ShiftAns = Value >> 8;    // >> 右シフト
ShiftAns = Value << 8;    // << 左シフト

代入

代入

int Value = 0;

Value = 100;    // = (代入)
Value += 100;   // += (加算代入) Value = Value + 100; と等価
Value -= 100;   // -= (減算代入) Value = Value - 100; と等価
Value *= 100;   // *= (乗算代入) Value = Value * 100; と等価
Value /= 100;   // /= (除算代入) Value = Value / 100; と等価
Value %= 100;   // %= (剰余代入) Value = Value % 100; と等価

Value <<= 5;    // <<= (左シフト代入) Value = Value << 5; と等価
Value >>= 5;    // >>= (右シフト代入) Value = Value >> 5; と等価

int? Value1 = null;
int Value2 = Value1 ?? -1;   // ??演算子

メンバ アクセス

メンバ アクセス

// ドット演算子 (.) は、オブジェクトのメンバ・アクセスに使用。
System.Console.WriteLine("hello"); 

条件

条件

int Value1 = 100;
int Value2 = 100;

bool Ans = Value1 == Value2 ? true : false; 

オブジェクト作成

オブジェクト作成

string Text = new string();

▲ページトップに戻る

【本を読んでもよくらからない】 … 個別指導でわかりやすくお教えします