/** * ドメイン非依存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); 012 staticメンバ(staticメソッド) 004 解答例 | Javaドリル

012 staticメンバ(staticメソッド) 004 解答例

012-004 012 staticメンバ
public class StringUtils {
    // staticメソッド - 与えられた文字列が回文かどうかを判定するメソッド
    public static boolean isPalindrome(String str) {
        // 入力文字列から非アルファベット文字を削除し、小文字に変換
        str = str.replaceAll("[^a-zA-Z0-9]", "").toLowerCase();
        
        // 文字列を前後から比較して回文か判定
        int left = 0;
        int right = str.length() - 1;
        while (left < right) {
            if (str.charAt(left) != str.charAt(right)) {
                return false;
            }
            left++;
            right--;
        }
        return true;
    }

    // staticメソッド - 与えられた文字列を逆さまにするメソッド
    public static String reverseString(String str) {
        // 文字列を逆順にして新しい文字列を生成
        StringBuilder reversed = new StringBuilder();
        for (int i = str.length() - 1; i >= 0; i--) {
            reversed.append(str.charAt(i));
        }
        return reversed.toString();
    }

    // staticメソッド - 与えられた文字列内で指定された文字が出現する回数を数えるメソッド
    public static int countOccurrences(String str, char target) {
        // 文字列内で指定された文字が出現する回数をカウント
        int count = 0;
        for (char ch : str.toCharArray()) {
            if (ch == target) {
                count++;
            }
        }
        return count;
    }

    public static void main(String[] args) {
        // テスト
        String palindromeTest = "A man, a plan, a canal, Panama!";
        System.out.println("Is \"" + palindromeTest + "\" a palindrome? " + isPalindrome(palindromeTest));

        String reverseTest = "Hello, World!";
        System.out.println("Reversed \"" + reverseTest + "\": " + reverseString(reverseTest));

        String countTest = "Programming is fun!";
        char targetChar = 'g';
        System.out.println("Occurrences of '" + targetChar + "' in \"" + countTest + "\": " + countOccurrences(countTest, targetChar));
    }
}

この解答例では、StringUtilsクラスに3つの静的メソッドが含まれています。それぞれが回文判定、文字列逆転、文字の出現回数のカウントを行います。mainメソッドではこれらのメソッドをテストしています。

「012 staticメンバ」問題集リスト

🎯 実習で理解を深めよう

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

コメント

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