第六章 
 〜基本編〜
 条件判断前編
 条件判断をする
   前章でも言っていた条件のやり方です〜
  条件って何?って思ってる人もいるかと思うですので、
  条件とは何か、から説明をしていこうと思うですね!
   条件というのは、その時にあった処理をさせるための物です。
  例えば、もし秋葉原にJavaの本が売ってあったらJavaの本を買う
  のような感じで、もし何とかだったら、何々をするのような考え方を
  条件って言うです〜
   これをJavaでプログラムをするときに使うならば・・・
  もし変数Aの値が100だったら、変数Aの値を0にする。
  のような感じで使うです。
  では、実際にやり方をみていくです〜

  例  :キーボードからテストの点数を入力して、
  その点数が40以上だったら合格です〜と
      そうでなければ、赤点ですよ・・・。と表示させる。
  やり方:if〜else文を使って条件判断をさせる。
サンプルプログラム6_1
   1:
   2:
   3:
   4:
   5:
   6:
   7:
   8:
   9:
   10:
   11:
   12:
   13:
   14:
   15:
   16:
   17:
   18:
   19:
   20:
   21:
   22:
import java.io.*;

class Rei6_1{
    public static void main(String[] args) throws IOException{
        BufferedReader br = new
            BufferedReader(new InputStreamReader(System.in));

        System.out.print("点数を入力:");
        String str = br.readLine();

        int ten = Integer.parseInt(str);

        if(ten >= 40){
            System.out.println("合格です〜");
        }
        else{
            System.out.println("赤点ですよ・・・");
        }

        System.out.println("報告終了");
    }
}

   13行目から18行目にかけて説明するです〜
  13行目のif(ten >= 40)は、もしtenが40以上だったらという意味をもってるです。
  ten >= 40というのが条件ですね!
  仮にtenが50だとしたら、tenが40以上だったらにあてはまるので
  if(ten >= 40){ から } までの間を処理するです。
  ここでは、System.out.println("合格です〜");が表示されるです。
  逆に、tenが30だとしたらどうなるかと言うですと・・・
  このときtenは30なので、tenが40以上だったらにあてはまらないです。
   そうなると、さっきの if(ten >= 40){ から } まで、処理がされないで
  else{より先が処理されるです。
  そうするとSystem.out.println("赤点ですよ・・・");が処理されるです〜
   図に描いて見てみると次のようになるです〜
  

   実は、if〜else文は、別にelseを使わなくてもいいときもあるんです〜
  例えば、もし変数Aの値が100だったときだけ何かを処理したい
  といったときのような感じで処理をしたいときがあると思うです。
   そういうときは、サンプルプログラム6_2でやったときの
  else{ から } までの部分を消してあげればいいだけです〜
サンプルプログラム6_2
   1:
   2:
   3:
   4:
   5:
   6:
   7:
   8:
   9:
   10:
   11:
   12:
   13:
   14:
   15:
   16:
   17:
   18:
   19:
import java.io.*;

class Rei6_2{
    public static void main(String[] args) throws IOException{
        BufferedReader br = new
            BufferedReader(new InputStreamReader(System.in));

        System.out.print("点数を入力:");
        String str = br.readLine();

        int ten = Integer.parseInt(str);

        if(ten >= 40){
            System.out.println("合格です〜");
        }

        System.out.println("報告終了");
    }
}


   if文の条件のところを少し詳しくやるです〜
  まずは、条件のところで使う関係演算子についてまとめてみたです〜
  関係演算子は、条件を記述するときに使っていたやつです〜。

関係演算子一覧表
演算子使用例
説明
== a == b aとbが同じときtrueを返す
!= a != b aとbが違うときtrueを返す
>= a >= b aがb以上のときtrueを返す
> a > b aがbより大きいときtrueを返す
<= a <= b aがb以下のときtrueを返す
< a < b aがbより小さいときtrueを返す


   説明の中にあったtrueを返すというのが、ポイントです。
  返すというのは、trueになるってことです。
  変数の説明でやったブール型を覚えてるですか?
  フラグがどうとかと言ったアレです。それが今回出てくるのです〜
  tureというのは、Yesとか正しいとか真と同じです〜
  そう考えると・・・
  a == bだった場合、この式が正しかったらtrueを返すことになるですね!
  if文は、条件があてはまるときに処理をするんだったですね!
  つまりtrueになったとき処理をするです〜
   逆に条件にあてはまらなかった場合は、どうなるかというですと
  falseが返ってくるです。
  これは、Noとか正しくないとか偽と同じです〜
  正しくないってことは、条件にあてはまらないってことですね!
  if〜else文のときだとelseを実行することになるです。

  a = 10;
  b = 10;
  if(a==b){
   処理;
  }

  上のようなプログラムがあったとしたら、
  if文の中では、aとbが等しいときtrueを返すんだったですね!
  そうすると上の例だと正しいのでif文の中は、
  if(true)に変わるです〜
  そしてtrueなのでif文の処理のところが処理されるです〜


  今回のポイント
  @ if〜else文は条件を判断して処理を行う
  A if(条件)で条件がtrueのときifの処理をする
    条件がfalseのときは、処理をしない。
   このときelse文があったらelse文を処理する
  B 説明にはなかったですが、== は別物なので
    間違って使わないようにするです〜
    初めてやる人は、結構はまっちゃうです〜ので気をつけるです〜

  TOPに戻る     Java講座に戻る