Java StringTokenizerjava.util パッケージに属し、文字列を区切るために使用されます。
StringTokenizer のコンストラクタ:
- 1. StringTokenizer(String str):str を解析するための StringTokenizer オブジェクトを構築します。Java のデフォルトの区切り文字はスペース("")、タブ(\t)、改行(\n)、復帰(\r)です。
- 2. StringTokenizer(String str, String delim):str を解析するための StringTokenizer オブジェクトを構築し、指定された区切り文字を提供します。
- 3. StringTokenizer(String str, String delim, boolean returnDelims):str を解析するための StringTokenizer オブジェクトを構築し、指定された区切り文字を提供すると同時に、区切り文字を返すかどうかを指定します。
StringTokenizer の一般的なメソッド:
- 1. int countTokens():nextToken メソッドが呼び出された回数を返します。
- 2. boolean hasMoreTokens():まだ区切り文字があるかどうかを返します。
- 3. boolean hasMoreElements():列挙(Enumeration)オブジェクト内にまだデータがあるかどうかを判断します。
- 4. String nextToken():現在位置から次の区切り文字までの文字列を返します。
- 5. Object nextElement():列挙(Enumeration)オブジェクトの次の要素を返します。
- 6. String nextToken(String delim):4と同様に、指定された区切り文字で結果を返します。
例 1
import java.util.*;
public class Main
{
public static void main(String[] args)
{
String str = "サンプル,google,taobao,facebook,zhihu";
//カンマ(,)を区切り文字として文字列を区切ります。
StringTokenizer st=new StringTokenizer(str,",");
while(st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
}
}
出力結果は次のとおりです:
サンプル google taobao facebook zhihu
例 2
import java.util.*;
public class Main
{
public static void main(String args[])
{
System.out.println("最初のコンストラクタを使用する:");
StringTokenizer st1 = new StringTokenizer("Hello サンプル How are you", " ");
while (st1.hasMoreTokens())
System.out.println(st1.nextToken());
System.out.println("2番目のコンストラクタを使用する:");
StringTokenizer st2 = new StringTokenizer("JAVA : Code : String", " :");
while (st2.hasMoreTokens())
System.out.println(st2.nextToken());
System.out.println("3番目のコンストラクタを使用する:");
StringTokenizer st3 = new StringTokenizer("JAVA : Code : String", " :", true);
while (st3.hasMoreTokens())
System.out.println(st3.nextToken());
}
}
出力結果は次のとおりです:
使用第一种构造函数: Hello サンプル How are you 使用第二种构造函数: JAVA Code String 使用第三种构造函数: JAVA : Code : String