書きかけ
数字の計算はどうすればよいのでしょうか。
C#では+、-、などの記号を演算子(operator)といいます。
この演算子で計算されるものを被演算子(operand)といいます。
以下の式ではx,yが被演算子、+が演算子です。
x + y
コード例
using System;
class prog
{
static void Main()
{
int x = 5;
int y = 10;
int z = x + y;
Console.WriteLine(z.ToString());
//int型変数の後に「.ToString()」をつけると、string型に変換します。
}
}
演算子の種類
算術演算子(Arithmetic operator)
足す、引く、かける、割るなどの基本的な計算を行う演算子を「算術演算子(Arithmetic operator)」といいます。
以下が算術演算子です。
| 演算子 | 使用例 | 動作 |
| + | x+y | xとyを足す |
| = | x-y | xからyを引く |
| * | x*y | xとyをかける |
| / | x/y | xをyで割る |
| % | x%y | xをyで割った余り |
コード例
using System;
class prog
{
static void Main()
{
int x = 10;
int y = 5;
int z = x + y;
Console.WriteLine(z.ToString()); //結果:15
z = x - y;
Console.WriteLine(z.ToString()); //結果:5
z = x * y;
Console.WriteLine(z.ToString()); //結果:50
z = x / y;
Console.WriteLine(z.ToString()); //結果:2
z = x % y;
Console.WriteLine(z.ToString()); //結果:0
}
}
「+演算子」は文字列を連結するためにも使えます。
Console.WriteLine("こんにちは" + "おはよう");
代入演算子(Assignment operator)
数学では「=(イコール)」は左辺と右辺の両辺が等しいことを意味していますが、プログラミングにおいては
右辺の値を左辺に代入するという動きをします。
この「=(イコール)」の事を「代入演算子(Assignment operator)」と言います。
例
x = y; //xにyを代入する x = y = z; //yにzを代入し、xにyを代入する。
インクリメント(increment)・デクリメント(decrement)演算子
次のような計算をしたい時には、インクリメント(increment)演算子・デクリメント(decrement)演算子が使えます。
int x = 1;
int y = 5;
x = x + 1;
y = y - 1;
これにインクリメント演算子・デクリメント演算子を使うと以下のように記載できます。
int x = 1;
int y = 5;
x++;
y--;
加算代入演算子(addition assignment operator)
以下のような演算子「+=」を「加算代入演算子(addition assignment operator)」と言います。
x += y; // 「x = x + y」と同じ
減算代入演算子(Subtraction assignment operator)
以下のような演算子「-=」を「減算代入演算子(Subtraction assignment operator)」と言います。
x -= y; // 「x = x - y」と同じ
等値演算子(Equality operator)
二つのオペランドを比較し、それが同じ値であるかを判断する演算子を「等値演算子(Equality operator)」と言います。
両オペランドが等しい場合にtrueを返し、それ以外の場合はfalseを返します。
例
int a = 1; int b = 2; Console.WriteLine(a==b) //コンソールにはFalseが表示される。
比較演算子(Comparison operator)
二つのオペランドを比較し、その比較条件が正か偽かを判断する演算子を「比較演算子(Comparison operator)」と言います。
記述した比較条件が正しい場合はtrueを、偽の場合はfalseを返します。
| < | 小なり演算子 |
| > | 大なり演算子 |
| <= | 以下演算子 |
| >= | 以上演算子 |
※「=(イコール)」は右側に書く事を覚えておきましょう。
例
Console.WriteLine(8 < 2); //コンソールには「False」が表示されます。 Console.WriteLine(8 > 2); //コンソールには「True」が表示されます。 Console.WriteLine(8 <= 2); //コンソールには「False」が表示されます。 Console.WriteLine(5 >= 5); //コンソールには「True」が表示されます。
※数学の不等号を調べると理解が深まるかもしれません。
論理演算子(Logical operator)
ブール型の値に対して作用する演算子を「論理演算子(Logical operator)」と言います。
論理否定演算子(logical negation operator)
頭に「!(エクスクラメーションマーク)」をつけると、論理否定できます。trueがfalseに、falseがtrueに。要は逆になります。
例
bool live = false; Console.WriteLine(!live); //コンソールには「True」が表示される。 Console.WriteLine(!true); //コンソールには「false」が表示される。
※数学の集合と論理を調べると理解が深まるかもしれません。
ビット処理シフト演算子
new演算子
- 型の新しいインスタンスを作成する。
- メンバーの宣言修飾子、またはジェネリック型製薬として使用することもできる。