U-style Java独学日記Return  Since2001 メインメニューに戻る Javaメニューに戻る
タイトル演算子について
文書管理番号 作成日 分類1 分類2 キーワード

java0009

2002-10-15 基本   演算についてのあれこれ、演算子

今回は演算についてまとめてみました。演算はコンピュータの中でも重要な処理です。プログラムのステップを一つ一つ進めていくためにも必要ですし、計算の結果を受け取るためにも利用します。さて早速学習に移ります。

計算をするためには式が必要です。式は
演算子とオペランドで構成されます。
演算子とは英語でOperator:演算するもの、オペランドは英語で...あっ英語か、演算されるものです。
基本的には、 オペランド 演算子 オペランド (例:1+1)と記述されます。

次の表は基本的な演算子をまとめたものです。

記号 内容

例の説明

数値の場合は加算(たす)、文字の場合は文字列連結 1 + 2

 

減算(ひく) 2 - 1  
乗算(かける) 2 * 1  
除算(わる) 2 * 2  
剰余(わったあまり) 3 % 2  
++ インクリメント(1ずつ加算) ++a 実行すると a = a + 1
−− デクリメント(1ずつ減算(引く) --a 実行すると a = a - 1
より大きい(その値は含まない) a > 1 aが1より大きい場合に真となる
より小さい(その値は含まない) a < 1 aが1より小さい場合に真となる
>= 以上(その値も含む) a >= 1 aが1以上の時に真:1も含まれます。
<= 以下(その値も含む) a <= 1

aが1以上の時に真;1も含まれます。

== 等価(等しい) a == 1 aが1と等しい時に真
!= 非等価(等しくない) a != 1 aが1と等しくないときに真

ではいろいろ試してみます。
まずはソースファイルです。

class java0009_01
{
public static void main(String args[])
{
//足し算
System.out.println("1+1は" + (1+1));
//引き算
System.out.println("1−1は" + (1-1));
//掛け算
System.out.println("1×2は" + (1*2));
//割り算
System.out.println("1÷2は" + (1/2));
//剰余
System.out.println("3÷2の余りは" + (3%2));
//インクリメント
//使用する変数の初期化
int a = 0;
System.out.println("aのインクリメントを行います。");
System.out.println("現在のaの値は" + a +"です");
System.out.println("aの値は" + a + "です。++aは" + (++a));
System.out.println("aの値は" + a + "です。a++は" + (a++));
System.out.println("aの値は" + a + "です。");
//比較演算子の値
//使用する変数の初期化
a = 0;
System.out.println("aの値は" + a + "です");
System.out.println("a > 0は" + (a > 0) + "です");
System.out.println("a < 1は" + (a < 1) + "です");
System.out.println("a >= 0は" + (a >= 0) + "です");
System.out.println("a <= 1は" + (a <= 1) + "です");
System.out.println("a == 0は" + (a == 0) + "です");
System.out.println("a != 0は" + (a != 0) + "です");

}
}

まず簡単なところから足し算〜割り算です


1+1は2
1−1は0
1×2は2
1÷2は0

次は剰余です。プログラミングでは意外と使われます

3÷2の余りは1

次はC++などではよく使われるインクリメント演算子です。
結果に注意してください。

aのインクリメントを行います。
現在のaの値は0です
aの値は0です。++aは1
aの値は1です。a++は1
aの値は2です。

++が前についていつものを前置インクリメントといいます。内容はaに1を足してaに値を入れるというものです。したがって++aの結果は1が加算された1になります。
次は++が後についています。これは後置インクリメントと言われます。結果に注意してください。aの値が1でa++が1です。これはどういうことかというとaの値を処理してからaに1を足すということをしています。その後の結果をみるとちゃんと1が加算されて2になっています。上記の2パターンは条件式の時によく使うので取り扱いに注意が必要です。

さて次は等式などです。

aの値は0です
a > 0はfalseです
a < 1はtrueです
a >= 0はtrueです
a <= 1はtrueです
a == 0はtrueです
a != 0はfalseです

演算子は判定したあと結果を返します。通常の計算では値と値の演算による結果ですが、比較演算子ではtrue(真)とfalse(偽)が結果として返されます。

最後に文字連結演算子ですが、これは上記ソースの
System.out.println("a > 0は" + (a > 0) + "です");
+ (a > 0) +のプラスが連結演算子です。文字列と文字列を足してひとつの文字列を作るというものです。