トップに戻る

String の split・結合・比較の考え方

文字列を分ける、つなぐ、比べる、数える

文字列処理の基本形 String
String str1 = "We are ";
String str2 = "the world.";
String str3 = str1 + str2;

String x = "TAKURO,YOSHIDA,singer";
String[] tokens = split(x, ",");

if (token1.equals(token2)) {
  println("token1とtoken2は同じです");
} else {
  println("token1とtoken2は違います");
}
split() で分割する delimiter
TAKURO,YOSHIDA,singer
tokens[0] TAKURO
tokens[1] YOSHIDA
tokens[2] singer

split(x, ",") は、カンマを区切りとして文字列を切り分け、結果を String[] の配列に入れます。

押さえるポイント + / split / equals
1

+ は文字列をつなぐ

str1 + str2 と書くと、2つの文字列を前から順につなげます。空白が必要なら、元の文字列に空白を含めます。

2

split() は配列を作る

split(str, ":")split(x, ",") は、区切り文字の前後で分割し、String型配列を返します。

3

文字列比較は equals()

文字列の中身が同じか調べる時は a.equals(b) を使います。条件式の結果が true なら if 側、false なら else 側が動きます。

コロンで分けて1行ずつ表示する 授業内課題 4
String str = "TOYOSATODAI:UTSUNOMIYA:TOCHIGI";
String[] tokens = split(str, ":");

for (int i = 0; i < tokens.length; i++) {
  println(tokens[i]);
}
tokens[0] TOYOSATODAI が入ります。
tokens[1] UTSUNOMIYA が入ります。
tokens[2] TOCHIGI が入ります。
分割して bbb の個数を数える 授業内課題 5
String x = "aaa,bbb,ccc,bbb";
String[] tokens = split(x, ",");
int count = 0;

for (int i = 0; i < tokens.length; i++) {
  if (tokens[i].equals("bbb")) {
    count++;
  }
}

println(count);
tokens[0]aaa → 数えない
tokens[1]bbb → count++
tokens[2]ccc → 数えない
tokens[3]bbb → count++
表示結果
2