===== 文字列操作 ===== ==== 文字列判定 ==== ^ 用途 ^ メソッド ^ | 内容比較(大小文字区別あり) | public boolean equals(Object o) | | 内容比較(大小文字区別なし) | public boolean equalsIgnoreCase(String s) | | 文字列長 | public int length() | | 空文字判定 | public boolean isEmpty() | ==== 文字列判定 ==== ^ 用途 ^ メソッド ^ | 指定文字列を含むか判定 | public boolean contains(String s) | | 指定文字列で始めるか判定 | public boolean startsWith(String s) | | 指定文字列で終わるか判定 | public boolean endsWith(String s) | | 指定文字が最初に登場する位置を判定 | public int indexOf(int ch) | | 指定文字列が最初に登場する位置を判定 | public int indexOf(String s) | | 指定文字が最後に登場する位置を判定 | public int lastIndexOf(int ch) | | 指定文字列が最後に登場する位置を判定 | public int lastIndexOf(String s) | ==== 文字列切り出し ==== ^ 用途 ^ メソッド ^ | 指定位置から1文字切り出し | public char charAt(int index) | | 指定位置から文字列を切り出し | public String substring(int index)\\ public String substring(int index, int endIndex) | String s = "abcdefghijklmn"; System.out.println("3文字目以降: ", s.substring(3)); System.out.println("3文字目から4文字: ", s.substring(3, 7)); 3文字目以降: defghijklmn 3文字目から4文字: defg ==== 文字列編集 ==== ^ 用途 ^ メソッド ^ | 小文字に変換 | public String toLowerCase() | | 大文字に変換 | public String toUpperCase() | | 前後の空白を除去 | public String trim() | | 文字列を置換 | public String replace(String before, String after) | ==== 文字列連結 ==== ※StringBuilder: シングルスレッド向け、StringBuffer: マルチスレッド向け === +演算子による結合 === String s = "hoge1" + "hoge2"; === StringBuilder === StringBuilder sb = new StringBuilder(); sb.append("hoge1"); sb.append("hoge2"); String s = sb.toString(); === StringBuffer === StringBuffer sb = new StringBuffer(); sb.append("hoge1"); sb.append("hoge2"); String s = sb.toString(); ==== 文字列分割 ==== === split === ※[[プログラミング:java:基本:正規表現]]も指定可能 String s = "abc,def"; String[] words = s.split(","); for (String w : words) { System.out.println(w); } abc def ==== 文字列置換 ==== === replaceAll === ※[[プログラミング:java:基本:正規表現]]も指定可能 String s = "abcd"; String w = s.replaceAll("bc", "X"); System.out.println(w); aXd ==== String⇔char/byte配列の相互変換 ==== String s = "abcdefg"; char[] data1 = s.toCharArray(); byte[] data2 = s.getBytes(java.nio.Charset.forName("utf-8")); // 文字コードは省略可能 String data3 = new String(data1);