Java | 1 日 60 分 × 7 日アプリ学習:超初級編

Java
スポンサーリンク

この7日間プランの全体像

このプランは「Java はまったく初めて」「プログラミングもほぼ初めて」という人を想定しています。
毎日 60 分 × 7 日で、コンソール(黒い画面)で動く小さなアプリを作れるレベルまでを目指します。

7日間のざっくりした流れはこうです。

(1)開発環境と「Hello World」
(2)変数・型・計算
(3)条件分岐 if
(4)繰り返し for / while
(5)メソッド(関数)
(6)配列と for の組み合わせ
(7)小さなミニ家計簿(または点数管理)アプリを完成

専門用語はできるだけ噛み砕き、「なぜそうするか」も一緒に説明していきます。


0日目:環境準備(ざっくり)

Javaの実行環境とIDE

超初級では「難しい設定で詰む」とやる気がなくなります。
おすすめは、次のどれかです。

(1)オンラインの Java 実行環境(ブラウザ上でコードを書いて実行できるサイト)
(2)IntelliJ IDEA Community(無料)や Eclipse などの IDE をインストール
(3)VS Code + Java 拡張機能

最初に大事なのは、「Java のコードを書いて、実行ボタンを押すと結果が見える状態」を作ることです。
この説明では、ファイル名を Main.java とし、main メソッドを持ったクラスからスタートする想定で書きます。


1日目:Hello World と「Javaプログラムの形」を理解する

最初の一歩:Hello World

まずは次のコードを Main.java に書いて、実行してみてください。

public class Main {
    public static void main(String[] args) {
        System.out.println("こんにちは Java!");
    }
}
Java

実行すると、コンソールに

こんにちは Java!

と表示されれば成功です。
ここに出てくる要素を、一つずつ噛み砕きます。

Javaプログラムの基本構造(重要)

上のコードを「入れ物」と「入口」に分けて考えます。

(1)public class Main { ... }
これは「Main というクラス(設計図)です」という宣言です。
Java では、すべてのコードは必ずクラスの中に書きます。

(2)public static void main(String[] args) { ... }
これは「プログラムが最初に実行を開始する場所」です。
main メソッドと呼ばれ、ここから処理が始まります。

(3)System.out.println("こんにちは Java!");
これは「画面に文字を表示する命令」です。
println は「print line(行を出力する)」の略で、文字列を表示した後に改行します。

この 3 つをざっくりまとめると、

  • クラスの中に
  • main メソッドを作って
  • その中に処理を書いていく

という形になります。

1日目の練習

以下のように、中身の文字を自分で変えてみましょう。

public class Main {
    public static void main(String[] args) {
        System.out.println("私の名前は山田です。");
        System.out.println("Javaを勉強中です。");
    }
}
Java

複数行の println を使うことで、「上から順番に処理される」という感覚を掴んでください。


2日目:変数とデータ型、計算と文字列結合

変数とは?「名前付きの箱」のイメージ

変数は「値を入れておく箱」に名前を付けたものです。

int age = 25;
Java

これは「age という名前の箱に 25 という整数を入れる」という意味です。

Java では、「何を入れる箱なのか(型)」を必ず前につけます。
代表的なものは次のようなものです。

  • int 整数(小数点なし)
  • double 小数ありの数
  • String 文字列(テキスト)

数値型の例

public class Main {
    public static void main(String[] args) {
        int price = 120;
        int quantity = 3;

        int total = price * quantity;

        System.out.println("合計金額は " + total + " 円です。");
    }
}
Java

ここでの流れを整理すると、

(1)price に 120、quantity に 3 を入れる
(2)totalprice * quantity の結果(360)を入れる
(3)文字列と数値を + でつなげて表示

+ は数値同士なら足し算、文字列が入ると「つなぐ」動きになります。

String型と文字列

文字列は " で囲みます。

String name = "太郎";
System.out.println("こんにちは、" + name + "さん");
Java

"こんにちは、"name"さん" がすべてつながって 1 つの文字列になります。

2日目の練習

(1)自分のプロフィールを変数で表現する

public class Main {
    public static void main(String[] args) {
        String name = "太郎";
        int age = 20;
        String hobby = "ゲーム";

        System.out.println("名前: " + name);
        System.out.println("年齢: " + age);
        System.out.println("趣味: " + hobby);
    }
}
Java

name・age・hobby を自分のものに変えてみてください。

(2)税込み価格を計算する

public class Main {
    public static void main(String[] args) {
        int price = 100;
        double taxRate = 0.1; // 10%

        double tax = price * taxRate;
        double total = price + tax;

        System.out.println("税額: " + tax);
        System.out.println("税込価格: " + total);
    }
}
Java

intdouble の違い、「整数か小数か」を意識してみてください。


3日目:条件分岐 if で「場合分け」する

if文の基本形(重要)

「もし〜なら〜する。そうでなければ〜する」という処理を、Java では if で書きます。

if (条件) {
    // 条件が true(真)のときの処理
} else {
    // 条件が false(偽)のときの処理
}
Java

例として、「点数が 80 以上なら合格、そうでなければ不合格」を考えます。

public class Main {
    public static void main(String[] args) {
        int score = 75;

        if (score >= 80) {
            System.out.println("合格");
        } else {
            System.out.println("不合格");
        }
    }
}
Java

ここで score >= 80 が条件です。
>= は「以上」、他にも

  • > より大きい
  • < より小さい
  • <= 以下
  • == 等しい
  • != 等しくない

といった比較演算子があります。

else if で条件を増やす

複数のランク分けもできます。

public class Main {
    public static void main(String[] args) {
        int score = 75;

        if (score >= 80) {
            System.out.println("Aランク");
        } else if (score >= 60) {
            System.out.println("Bランク");
        } else {
            System.out.println("Cランク");
        }
    }
}
Java

上から順に条件がチェックされ、最初に当てはまったところのブロックだけが実行されます。

偶数・奇数を判定する

public class Main {
    public static void main(String[] args) {
        int num = 7;

        if (num % 2 == 0) {
            System.out.println("偶数です");
        } else {
            System.out.println("奇数です");
        }
    }
}
Java

% は「割り算の余り」を表します。
2 で割った余りが 0 なら偶数、1 なら奇数です。

3日目の練習

(1)年齢によるメッセージ

  • 20歳以上: 「大人です」
  • 13〜19: 「ティーンです」
  • 12以下: 「子どもです」
public class Main {
    public static void main(String[] args) {
        int age = 16;

        if (age >= 20) {
            System.out.println("大人です");
        } else if (age >= 13) {
            System.out.println("ティーンです");
        } else {
            System.out.println("子どもです");
        }
    }
}
Java

age の値をいろいろ変えて試してみてください。


4日目:繰り返し for と while で「同じ処理を何度も」

for文の基本形(重要)

for は「回数がはっきりしている繰り返し」に向いています。

for (int i = 0; i < 5; i++) {
    System.out.println(i);
}
Java

この意味を分解すると、

(1)int i = 0; でカウンタ変数 i を 0 で初期化
(2)i < 5 の間だけループする(true の間)
(3)1 回ループするごとに i++(i を 1 増やす)

結果は 0〜4 までが順番に表示されます。

合計値を求める典型パターン

1〜10 までの合計を求める例です。

public class Main {
    public static void main(String[] args) {
        int sum = 0;

        for (int i = 1; i <= 10; i++) {
            sum = sum + i;
        }

        System.out.println("合計: " + sum);
    }
}
Java

このパターンは今後何度も使います。

  • ループの外で sum を 0 で用意
  • ループ内で sum に少しずつ足していく
  • ループが終わったら結果を使う

while文との違い

while は「いつ終わるか条件次第」の繰り返しに向いています。

int i = 0;
while (i < 5) {
    System.out.println(i);
    i++;
}
Java

for とほぼ同じ動きですが、

  • 初期化
  • 繰り返し条件
  • 更新処理

を別々に書くイメージです。

4日目の練習

(1)1 から 100 までの中で、3 の倍数だけ表示する

public class Main {
    public static void main(String[] args) {
        for (int i = 1; i <= 100; i++) {
            if (i % 3 == 0) {
                System.out.println(i);
            }
        }
    }
}
Java

if と for を組み合わせる感覚を掴んでください。


5日目:メソッド(関数)で処理に名前をつける

メソッドの基本形(重要)

メソッドは「処理のまとまりに名前をつけたもの」です。
Java ではクラスの中に定義します。

public class Main {

    public static void hello() {
        System.out.println("こんにちは!");
    }

    public static void main(String[] args) {
        hello();
        hello();
    }
}
Java

ここでのポイントは、

  • public static void hello() がメソッド定義
  • main の中で hello(); と書くとその処理を呼び出せる

「定義」と「呼び出し」は別、という感覚が大事です。

引数付きメソッド

値を渡して、その値を使った処理をさせることもできます。

public class Main {

    public static void greet(String name) {
        System.out.println("こんにちは、" + name + "さん");
    }

    public static void main(String[] args) {
        greet("太郎");
        greet("花子");
    }
}
Java

String name が「外から渡される値」の受け取り口です。

戻り値があるメソッド

計算した結果を呼び出し元に返したいときは、戻り値を使います。

public class Main {

    public static int add(int a, int b) {
        int result = a + b;
        return result;
    }

    public static void main(String[] args) {
        int sum = add(3, 5);
        System.out.println("合計: " + sum);
    }
}
Java

ここで重要なのは、

  • メソッドの戻り値の型(int)を宣言する
  • 最後に return で値を返す
  • void は「何も返さない」という意味

という 3 点です。

5日目の練習

(1)税込み価格を計算するメソッド

public class Main {

    public static int calcTaxIncluded(int price) {
        double taxRate = 0.1; // 10%
        double result = price * (1 + taxRate);
        return (int)result; // 小数点以下を切り捨て
    }

    public static void main(String[] args) {
        int price = 1000;
        int finalPrice = calcTaxIncluded(price);
        System.out.println("税込価格: " + finalPrice + " 円");
    }
}
Java

(2)点数からランクを返すメソッド

public class Main {

    public static String getRank(int score) {
        if (score >= 80) {
            return "A";
        } else if (score >= 60) {
            return "B";
        } else {
            return "C";
        }
    }

    public static void main(String[] args) {
        System.out.println(getRank(85));
        System.out.println(getRank(70));
        System.out.println(getRank(50));
    }
}
Java

if とメソッドを組み合わせることで、「判定ロジック」を部品化しています。


6日目:配列で「複数の値」をまとめて扱う

配列の基本

配列は「同じ種類のデータをまとめる箱」です。

int[] scores = {80, 90, 70};
Java

3 つの整数をひとまとめにしています。
1 要素ずつ取り出すには、インデックス(番号)を使います。

System.out.println(scores[0]); // 80
System.out.println(scores[1]); // 90
System.out.println(scores[2]); // 70
Java

インデックスは 0 から始まることに注意してください。

配列と for の組み合わせ(重要)

配列の中身を全部処理するとき、for 文とセットで使うのが定番です。

public class Main {
    public static void main(String[] args) {
        int[] scores = {80, 90, 70, 100};

        int sum = 0;

        for (int i = 0; i < scores.length; i++) {
            sum = sum + scores[i];
        }

        double average = (double)sum / scores.length;

        System.out.println("合計: " + sum);
        System.out.println("平均: " + average);
    }
}
Java

ここでの重要ポイントは、

  • scores.length で「要素の数」が分かる
  • scores[i] で i 番目の要素にアクセス
  • ループで少しずつ合計していく

という 3 つです。

6日目の練習

(1)名前リストに挨拶する

public class Main {
    public static void main(String[] args) {
        String[] names = {"太郎", "花子", "次郎"};

        for (int i = 0; i < names.length; i++) {
            System.out.println("こんにちは、" + names[i] + "さん");
        }
    }
}
Java

(2)配列とメソッドの組み合わせ

public class Main {

    public static int sum(int[] nums) {
        int total = 0;
        for (int i = 0; i < nums.length; i++) {
            total += nums[i];
        }
        return total;
    }

    public static void main(String[] args) {
        int[] data = {5, 10, 15};
        int result = sum(data);
        System.out.println("合計: " + result);
    }
}
Java

配列をメソッドに渡して、処理結果だけ返してもらう形です。
「データ」と「処理」を分け始める最初の一歩になります。


7日目:ミニ家計簿(または点数管理)アプリを作る

作るアプリのイメージ

コンソールベースですが、こんな機能を持つミニアプリを作ってみます。

  • 複数の金額データを配列に持つ
  • 合計と平均を計算して表示
  • 一定金額以上なら「使いすぎ注意」を出す

まずは「固定データ版」で OK です。入力機能などは中級で扱えばいいので、
ここでは「配列+for+メソッド+if を全部まとめて使う」ことを目標にします。

コード例:簡易支出サマリー

public class Main {

    public static int sum(int[] nums) {
        int total = 0;
        for (int i = 0; i < nums.length; i++) {
            total += nums[i];
        }
        return total;
    }

    public static double average(int[] nums) {
        int total = sum(nums);
        return (double)total / nums.length;
    }

    public static void checkSpending(int total) {
        if (total >= 50000) {
            System.out.println("今月は支出が多めです。見直しを検討してください。");
        } else {
            System.out.println("支出は比較的おさえられています。");
        }
    }

    public static void main(String[] args) {
        int[] expenses = {1200, 800, 5600, 10000, 20000};

        int total = sum(expenses);
        double avg = average(expenses);

        System.out.println("支出合計: " + total + " 円");
        System.out.println("平均支出: " + avg + " 円");

        checkSpending(total);
    }
}
Java

このコードには、これまで学んだ要素がすべて詰まっています。

  • 配列 expenses
  • 合計を出すメソッド sum
  • 平均を出すメソッド average(中で sum を再利用)
  • total による条件分岐 checkSpending

そして main では、

  • データ(配列)を用意し
  • ロジック(メソッド)に渡し
  • 結果を表示する

という流れになっています。

コードの読み方のコツ

上から行単位で読むのではなく、

(1)データ:int[] expenses に何が入っているか
(2)処理:sumaveragecheckSpending は何をしているか
(3)つなぎ:main がそれらをどう組み合わせているか

という「役割」で分けて読むと理解しやすくなります。


この7日で身についた「核」と次のステップ

ここまでの 7 日間で、あなたは次の Java の基礎を押さえました。

  • クラスと main メソッドの形
  • 変数・型(int / double / String)
  • 四則演算と文字列結合
  • if / else / else if による条件分岐
  • for / while による繰り返し
  • メソッドの定義と引数・戻り値
  • 配列とループの組み合わせ

これは Java に限らず、多くの言語で共通する「プログラミングの土台」です。

次のステップとしては、例えばこんな方向があります。

(1)Scanner を使ってコンソールから入力できるようにする
(2)クラスを自分で定義して「オブジェクト指向」の入口を覗く
(3)配列ではなく ArrayList を使って、柔軟なリストを扱ってみる
(4)JavaFX や Swing で、GUI(ウィンドウ付き)のアプリに挑戦する

タイトルとURLをコピーしました