1

StringTokenzier を使用して、一連の行から単語のペアを作成する必要がある状況に陥っていました。しかし、そのクラスがどのようにしてその機能を提供できるのかわかりません。

例 : 入力 : "USA UK USSR China"
出力 : "USA UK" "UK USSR" "USSR China"

StringTokenizer には hasMoreElements() と hasMoreTokens() しかありませんが、それを繰り返し処理して目的の出力を得るにはどうすればよいでしょうか?

4

2 に答える 2

2

前のものを保存するだけで完了です:

String previous = tokenizer.nextToken();
while (tokenizer.hasMoreElements()) {
  String current = tokenizer.nextToken();
  String correctValue = previous + " " + current;

  previous = current;
}
于 2012-10-02T01:39:48.463 に答える
0

StringTokenizer の Javadocを見ましたか? それにも例があります。これまでに何を試しましたか?

トークナイザーは、所定のトークンに基づいて文字列を分割するために使用されます。あなたの場合、トークンはスペースです(デフォルト)。

 StringTokenizer st = new StringTokenizer("this is a test", " ");
 String prevToken = st.hasMoreTokens() ? st.nextToken() : "";
 while (st.hasMoreTokens()) {
     String currToekn = st.nextToken();
     System.out.println(prevToken + " " + nextToken );
     prevToken = currToken;
 }
于 2012-10-02T01:45:25.050 に答える