Javaにおける文字列操作の基礎

文字列オブジェクトのメソッド呼び出し

1. 文字列の長さ取得 length()

2. 特定位置の文字取得 charAt

charAt(インデックス)メソッドは配列のように0からインデックスが始まります。2文字目はインデックス1を指定します(lengthメソッドとforループ組み合わせて全文字取得可能)。

3. 両端の空白除去 trim()


文字列操作メソッド一覧

1. 文字列検索 indexOf

indexOf("検索文字列")は最初に見つかったインデックスを返し、見つからない場合は-1を返します。 2回目以降の検索はindexOf("検索文字列", 開始インデックス)で実行可能。

2. 文字列切り出し substring

2つの呼び出し形式があります:

  • substring(開始インデックス, 終了インデックス):開始インデックス含め終了インデックス前までの文字列
  • substring(開始インデックス):開始インデックスから末尾までの文字列

3. 開頭/末尾判定 startsWith/endsWith

ファイル拡張子チェックにendsWith(".doc")、セキュリティチェックにstartsWith("https")が使用されます。

4. 文字列置換 replaceAll

replaceAll("置換対象", "新値")で新規文字列を生成(元文字列は変更されない)


文字列処理技術

1. 文字列分割 split

split("区切り文字")メソッドを使用(. | *などの特殊文字は\\でエスケープが必要)

2. 大文字/小文字変換 toUpperCase/toLowerCase

public static void main(String[] args) {
    String name = "Yamada";
    // 全て大文字に変換
    String upper = name.toUpperCase();
    System.out.println(upper);
}

3. 文字列比較 equals

equals("比較対象")で文字列同士の一致を判定(==ではなく使用)

public static void main(String[] args) {
    String input = "サンプル";
    // equalsメソッドによる比較
    if (input.equals("サンプル")) {
        System.out.println("文字列一致");
    }
    // 逆順でも同じ動作
    if ("サンプル".equals(input)) {
        System.out.println("文字列一致");
    }
}

4. 数値と文字列変換

文字列→数値変換:

public static void main(String[] args) {
    String numStr = "456";
    // 文字列を整数へ変換
    int value = Integer.parseInt(numStr);
    System.out.println(value);
}

数値→文字列変換: 方法1(暗黙変換):

public static void main(String[] args) {
    int count = 789;
    // 空文字列との連結で自動変換
    String result = "" + count;
    System.out.println(result);
}

方法2(明示的変換):

public static void main(String[] args) {
    int count = 789;
    // valueOfメソッドによる変換
    String result = String.valueOf(count);
    System.out.println(result);
}

文字列の順序比較:

String strA = "apple";
String strB = "banana";
int result = strA.compareTo(strB);
// 結果が負の場合はstrAが辞書順で先に来る

タグ: Stringクラス indexOf substring split compareTo

6月16日 18:40 投稿