では、上級(応用)問題に挑戦してみましょう!ここでは「検索」「並び替え」「逆順表示」といった、配列を少し応用した使い方を練習します。
上級問題1:検索
問題: String型の配列 { "Java", "Python", "C", "Java", "Ruby" } の中で "Java" が何回出てくるか数えてください。
public class Main {
public static void main(String[] args) {
String[] langs = { "Java", "Python", "C", "Java", "Ruby" };
int count = 0;
for (int i = 0; i < langs.length; i++) {
if (langs[i].equals("Java")) {
count++;
}
}
System.out.println("\"Java\"の出現回数: " + count); // 2
}
}
Java👉 ポイント: 文字列の比較は == ではなく .equals() を使う。
上級問題2:並び替え(ソート)
問題: int型の配列 {5, 2, 9, 1, 3} を小さい順に並べ替えて表示してください。
方法1: 自分でバブルソートを書く
public class Main {
public static void main(String[] args) {
int[] nums = {5, 2, 9, 1, 3};
for (int i = 0; i < nums.length - 1; i++) {
for (int j = 0; j < nums.length - 1 - i; j++) {
if (nums[j] > nums[j + 1]) {
int temp = nums[j];
nums[j] = nums[j + 1];
nums[j + 1] = temp;
}
}
}
for (int n : nums) {
System.out.print(n + " ");
}
}
}
Java👉 出力結果
1 2 3 5 9
方法2: Java標準ライブラリを使う
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[] nums = {5, 2, 9, 1, 3};
Arrays.sort(nums);
System.out.println(Arrays.toString(nums)); // [1, 2, 3, 5, 9]
}
}
上級問題3:逆順表示
問題: int型の配列 {1, 2, 3, 4, 5} を逆順に表示してください。
public class Main {
public static void main(String[] args) {
int[] nums = {1, 2, 3, 4, 5};
for (int i = nums.length - 1; i >= 0; i--) {
System.out.print(nums[i] + " ");
}
}
}
Java👉 出力結果
5 4 3 2 1
✅ 上級まとめ
- 検索:
.equals()を使って文字列を探す。 - 並び替え: バブルソートなどのアルゴリズムを練習、または
Arrays.sort()を活用。 - 逆順表示: インデックスを後ろから前へループさせる。


