Javaのif文をマスターしよう

f:id:kirakira_rin:20190516214737j:plain

こんにちは、雑記ラビリンスです。

この記事ではJava言語によるif文の使い方を解説します。

条件分岐のif文と繰り返し処理のループはあらゆるプログラミング言語の基本となりますので、初めて学習する方はここでしっかりと押さえておきましょう。

if文とは

if文はプログラミング言語の基本のキです。書き方に違いがあれどプログラミング言語では必須の考えとなっています。

if文の考え方は「もし~だったら」という条件が正しければ「Aの処理」を違った場合は「Bの処理」を行うという具合に条件を満たしているか否かで処理を分けることを指します。

この条件が正しければを専門用語で「真」、「true」と呼び違った場合はを「偽」、「false」と呼びますので覚えておきましょう。

実際にif文を書いてみよう

それでは実際にif文の書き方を見てみましょう。ここではキーボードから入力した数値によって処理を分けていきます。

package src;
import java.util.Scanner;
public class SampleIf {
    public static void main(String args) {
        Scanner scanner = new java.util.Scanner(System.in);
        System.out.println("テストの点数を入力してください");
        int tokuten = scanner.nextInt();
        if (tokuten <= 50) {
            System.out.println("もう少し頑張りましょう");
        }else {
            System.out.println("おめでとう");
        }
        scanner.close();

    }
}

得点が50以下の場合は「もう少し頑張りましょう」が表示され「おめでとう」は表示されません。

ではもう少し複雑なif文「else if」を使った場合を見ていきましょう。

先ほどの条件分岐は「○か✖」の話です。しかし実際はもっと複雑です。

package src;
import java.util.Scanner;
public class SampleIf {
    public static void main(String args) {
        Scanner scanner = new java.util.Scanner(System.in);
        System.out.println("テストの点数を入力してください");
        int tokuten = scanner.nextInt();
        if (tokuten <= 50) {
            System.out.println("もう少し頑張りましょう");
        //テストの結果が50点より大きく80点以下の場合
        }else if(tokuten > 50 && tokuten <=80) {
            System.out.println("まあまあでしょう");
        }else {
            System.out.println("おめでとう");
        }
        scanner.close();

    }
}

「else if」の条件を追加したケースです。

実際、学校のテストは結果によってA判定、B判定、赤点となって、赤点は追試とかありますよね。

この場合、50点より大きく、80点以下の場合「まあまあでしょう」と表示されます。

「else if」の条件文に登場した「&&」は両方の条件を満たしたときに「真」となることを意味しています。これを論理演算子と呼びます。この場合は「50点より大きい」条件と「80点以下」の条件が成り立つ点数「51~80」の間がこの条件に当たります。

論理演算子は他にも「||」があります。これはパイプという記号「|」を2つつなげた文字です。パイプはキーボードの「¥」のところにあり、shiftを押しながら「¥」を押すと表示できます。

「||」は「または」を示し「どちらか片方の条件を満たす」と「真」となります。上のケースですと点数が「85」の時、「まあまあでしょう」と表示されます。

おわりに

javaのif文について解説しました。実際の開発ではもっと複雑にはなりますが必須の考え方なのでぜひマスターして下さい。

おしまい