/** * ドメイン非依存URL出力フィルタ * javadrill.tech移行時はwp_options.home/siteurlのみ変更すればよい * * データベースには絶対URL(https://minner.asia)を保持し、 * 表示時に現在のドメイン(home_url())に動的変換する */ function javadrill_make_urls_dynamic($content) { if (empty($content)) { return $content; } // データベース内の絶対URLを現在のhome_url()に置換 $old_url = 'https://minner.asia'; $new_url = untrailingslashit(home_url()); // http版も対応(念のため) $content = str_replace($old_url, $new_url, $content); $content = str_replace('http://minner.asia', $new_url, $content); return $content; } // 投稿本文、ウィジェット、タームの説明、抜粋に適用 add_filter('the_content', 'javadrill_make_urls_dynamic', 20); add_filter('widget_text', 'javadrill_make_urls_dynamic', 20); add_filter('term_description', 'javadrill_make_urls_dynamic', 20); add_filter('get_the_excerpt', 'javadrill_make_urls_dynamic', 20); 未分類 | Javaドリル https://minner.asia 楽々学べるJavaの問題集 Fri, 05 Sep 2025 02:35:17 +0000 ja hourly 1 https://wordpress.org/?v=6.8.3 https://minner.asia/wp-content/uploads/2023/10/cropped-logo-32x32.png 未分類 | Javaドリル https://minner.asia 32 32 020 コレクションフレームワーク(QueueとDeque) 023 問題 https://minner.asia/archives/4701 https://minner.asia/archives/4701#respond Sat, 13 Jan 2024 22:35:21 +0000 http://localhost/?p=4701

問題

以下の要件に基づいて、Queue インターフェースを実装したクラス CustomQueue を作成してください。

  1. enqueue メソッド: キューに要素を追加します。
  2. dequeue メソッド: キューから要素を取り出し、取り出した要素を返します。キューが空の場合は例外をスローしてください。
  3. isEmpty メソッド: キューが空かどうかを判定します。

ヒント

  1. フィールドの選定: Queue インターフェースを実装するには、内部で実際のデータ構造を保持するためのフィールドが必要です。LinkedList は一般的にキューの実装に適しています。
  2. enqueue メソッド: enqueue メソッドでは、内部のデータ構造に要素を追加します。このメソッドは引数を受け取り、その要素をデータ構造に追加する操作を行います。
  3. dequeue メソッド: dequeue メソッドでは、内部のデータ構造から要素を取り出します。取り出した要素を返すとともに、キューが空の場合は例外をスローします。
  4. isEmpty メソッド: isEmpty メソッドは、内部のデータ構造が空かどうかを判定します。データ構造が空であれば true を、そうでなければ false を返します。

これらのヒントを基に、CustomQueue クラスを実装してみてください。

→解答例

「020 コレクションフレームワーク」問題集リスト

🎯 実習で理解を深めよう

この内容についてJavaDrillで実際に手を動かして学習できます

]]>
https://minner.asia/archives/4701/feed 0
018 オブジェクト指向の深化(ポリモーフィズムの応用) 007 問題 https://minner.asia/archives/3999 https://minner.asia/archives/3999#respond Sun, 24 Dec 2023 09:29:26 +0000 http://localhost/?p=3999

問題

抽象クラス Shape があり、それを継承した Circle と Rectangle クラスがあります。
Shape クラスには calculateArea メソッドがあり、各サブクラスはこのメソッドをオーバーライドして面積を計算します。
main メソッドで、異なる形状(円と長方形)の面積を計算して表示するプログラムを作成してください。

ヒント

  1. Shape クラスの作成:
    • Shape クラスを作成し、抽象メソッド calculateArea を定義します。
  2. Circle クラスの作成:
    • Circle クラスを作成し、Shape クラスを継承します。
    • calculateArea メソッドをオーバーライドして円の面積を計算します。
  3. Rectangle クラスの作成:
    • Rectangle クラスを作成し、Shape クラスを継承します。
    • calculateArea メソッドをオーバーライドして長方形の面積を計算します。
  4. Main メソッドの作成:
    • main メソッドを作成し、異なる形状(円と長方形)のインスタンスを生成します。
    • それぞれのインスタンスの calculateArea メソッドを呼び出して面積を計算します。
    • 結果を表示します。

この手順に従うと、Shape クラスとそのサブクラス Circle と Rectangle を使用して、異なる形状の面積を計算するプログラムを作成できます。

→解答例

🎯 実習で理解を深めよう

この内容についてJavaDrillで実際に手を動かして学習できます

]]>
https://minner.asia/archives/3999/feed 0
014 継承(継承の基本) 007 問題 https://minner.asia/archives/3055 https://minner.asia/archives/3055#respond Fri, 01 Dec 2023 05:03:14 +0000 http://localhost/?p=3055

問題

Buildingという親クラスを作成し、それにopenというメソッドを追加します。Houseという子クラスを作成し、Buildingを継承します。また、Houseクラスにはliveというメソッドを追加します。Officeという子クラスも作成し、Buildingを継承します。そして、Officeクラスにはworkというメソッドを追加します。

ヒント

  1. 親クラス Building を作成します。このクラスには open というメソッドが含まれます。これは、建物を開く一般的なアクションを表します。
  2. 子クラス House を作成し、Building クラスを継承します。 House クラスには live というメソッドがあります。これは、家で生活するアクションを表します。
  3. 別の子クラス Office も Building クラスを継承します。そして、Office クラスには work というメソッドがあります。これは、オフィスで働くアクションを表します。
  4. 継承を使用して、親クラス Building のメソッドを子クラスで再利用し、各子クラスに特有の機能を追加します。クラス階層が理解しやすく、それぞれのクラスが自然な振る舞いを持つように注意します。

→解答例

「014 継承」問題集リスト

🎯 実習で理解を深めよう

この内容についてJavaDrillで実際に手を動かして学習できます

]]>
https://minner.asia/archives/3055/feed 0
004 配列(要素の呼び出し) 013 問題 https://minner.asia/archives/1002 https://minner.asia/archives/1002#respond Sun, 29 Oct 2023 08:13:55 +0000 http://localhost/?p=1002

問題

整数の配列が与えられた場合、その要素の合計を計算するプログラムを書いてください。

ヒント

合計を格納する変数を宣言:
合計を格納するための整数変数を宣言します。この変数を初期化して、合計をゼロで始めます。

ループを使用:
配列内の各要素にアクセスするためにループを使用します。一般的には for ループを使います。ループを使って、配列の要素を順番に処理します。

要素の合計:
ループ内で、配列の各要素を合計に加えていきます。

合計を表示:
最終的な合計を表示します。

これらのステップを組み合わせて、整数の配列内の要素の合計を計算できます。 total 変数を使用して、ループ内で合計を累積させることがポイントです。

→解答例

「0004 配列」問題集リスト

🎯 実習で理解を深めよう

この内容についてJavaDrillで実際に手を動かして学習できます

]]>
https://minner.asia/archives/1002/feed 0
004 配列(配列の作成) 012 解答例 https://minner.asia/archives/979 https://minner.asia/archives/979#respond Sun, 29 Oct 2023 07:59:58 +0000 http://localhost/?p=979
public class KeywordArrayExample {
    public static void main(String[] args) {
        // 1. 文字列の配列変数を宣言
        String[] keywords;

        // 2. 配列を初期化
        keywords = new String[3]; // 3つの予約語を格納するために初期化

        // 3. 予約語を代入
        keywords[0] = "if";
        keywords[1] = "for";
        keywords[2] = "while";

        // 4. 予約語を表示
        System.out.println("Javaの予約語:");
        for (int i = 0; i < keywords.length; i++) {
            System.out.println("Keyword " + (i + 1) + ": " + keywords[i]);
        }
    }
}

このコードでは、最初に文字列の配列変数 keywords を宣言し、次に要素数が3の配列を初期化しています。その後、各要素にいくつかのJavaの予約語を代入し、for ループを使用して配列内の予約語を表示しています。この例では、3つのJavaの予約語が表示されます。

「0004 配列」問題集リスト

🎯 実習で理解を深めよう

この内容についてJavaDrillで実際に手を動かして学習できます

]]>
https://minner.asia/archives/979/feed 0
004 配列(配列の作成) 011 問題 https://minner.asia/archives/970 https://minner.asia/archives/970#respond Sun, 29 Oct 2023 07:49:29 +0000 http://localhost/?p=970

問題

double型の配列変数を宣言し、要素数が10の配列を作成してください。この配列に0から9までのランダムな浮動小数点数を代入し、それらの値を表示してください。

ヒント

double型の配列変数を宣言:
最初に、浮動小数点数を格納するための配列変数を宣言します。この変数は、浮動小数点数データを格納するために使用されます。

配列を初期化:
配列を初期化し、実際のメモリ領域を割り当てます。要素数は、格納する浮動小数点数の数に合わせて指定します。

ランダムな浮動小数点数を代入:
配列に0から9までのランダムな浮動小数点数を代入する必要があります。これには、Javaの Math.random() メソッドを使用できます。このメソッドは、0以上1未満のランダムな浮動小数点数を生成します。これらの値を適切な範囲にスケーリングして代入します。

値を表示:
代入されたランダムな浮動小数点数を表示するために、ループを使用します。

これらのステップを組み合わせて、指定されたタスクを達成できます。ランダムな値の生成に関して、適切なスケーリングを行うことが重要です。

→解答例

「0004 配列」問題集リスト

🎯 実習で理解を深めよう

この内容についてJavaDrillで実際に手を動かして学習できます

]]>
https://minner.asia/archives/970/feed 0
002 キーボードからの入力 解答例004 https://minner.asia/archives/502 https://minner.asia/archives/502#respond Sun, 22 Oct 2023 07:19:25 +0000 http://localhost/?p=502
import java.util.Scanner;

public class StringLengthCalculator {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        // ユーザーに文字列の入力を促す
        System.out.print("文字列を入力してください: ");
        String input = scanner.nextLine(); // ユーザーの入力を読み取る

        // 文字列の長さを計算
        int length = input.length();

        // 長さを表示
        System.out.println("入力された文字列の長さは: " + length);

        // Scannerをクローズ
        scanner.close();
    }
}

このプログラムは次のステップで動作します:

  1. Scannerオブジェクトを作成し、キーボードからの入力を受け取るための準備を行います。
  2. ユーザーに文字列の入力を促すために、System.out.printを使用してメッセージを表示します。
  3. Scannerを使用して、ユーザーが入力した文字列をinput変数に読み取ります。
  4. input.length()を使用して、入力された文字列の長さを計算します。
  5. 計算した長さをSystem.out.printlnを使用して表示します。
  6. プログラムの最後で、Scannerをクローズしてリソースを解放します。

このプログラムを実行すると、ユーザーに文字列を入力するプロンプトが表示され、入力された文字列の長さが表示されます。たとえば、入力が “Hello, World!” であれば、出力は “入力された文字列の長さは: 13” となります。

String.length()

String クラスの length() メソッドは、Javaにおいて文字列の長さ(文字数)を取得するために使用されます。このメソッドは次のように構文化されています:

int length = myString.length();

ここで、myString は対象となる文字列オブジェクトを表します。length() メソッドを呼び出すことで、その文字列の文字数を整数値として取得できます。

以下は、String クラスの length() メソッドに関する詳細な説明です:

  1. 戻り値: length() メソッドは int 型の値を返します。この値は対象文字列の文字数を表します。
  2. 空文字列: 空の文字列(文字が含まれていない文字列)の場合、length() メソッドは 0 を返します。
  3. Unicode文字: length() メソッドは Unicode 文字も含む文字列の文字数を正確にカウントします。Unicode 文字は多くの異なる言語や記号を表現できるため、Javaの文字列は多言語の文字を扱うのに適しています。
  4. 注意事項: length() メソッドは文字列の長さを返すだけであり、インデックスを使用して特定の文字にアクセスするメソッドではありません。文字列内の特定の文字にアクセスするには、charAt() メソッドを使用します。

以下は、length() メソッドの使用例です:

String myString = "Hello, World!";
int length = myString.length();
System.out.println("文字列の長さは: " + length); // 出力: 文字列の長さは: 13

この例では、文字列 “Hello, World!” の長さが13であることが表示されます。length() メソッドは、文字列の長さを取得する際に非常に便利なメソッドです。

「002キーボードからの出力」問題集リスト

🎯 実習で理解を深めよう

この内容についてJavaDrillで実際に手を動かして学習できます

]]>
https://minner.asia/archives/502/feed 0