文字列操作
文字列判定
用途 | メソッド |
内容比較(大小文字区別あり) | 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: マルチスレッド向け
+演算子による結合
StringBuilder
StringBuilder sb = new StringBuilder();
sb.append("hoge1");
sb.append("hoge2");
String s = sb.toString();
StringBuffer
文字列分割
split
文字列置換
replaceAll
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);