-1
data_structures/ExpressionEvaluator.java:14: incompatible types.lang.String)
found   : java.util.StringTokenizer class data_structures.ExpressionEvaluator
required: java.util.Iterator<java.lang.String>ing> st = StringTokenize
        Iterator<String> st = new StringTokenizer(s);

Iterator をどこかで宣言する必要がありますか?

4

2 に答える 2

0

StringTokenizerクラスは文字列の分割に使用され、最近はあまり使用されていません。クラスsplitでメソッドを使用できます。String今あなたの問題に来て、それにIterator関連するものはなくStringTokenizer、それは利用しています。あなたはコンパイルさえしないオブジェクトからオブジェクトEnumerationを期待しているようです。したがって、列挙型をコーディングし、メソッドを使用して配列として分割します。あなたのコードは次のようになりますIteratorStringTokenizerString.split

StringTokenizer tokenizer = new StringTokenizer(inputString);

while(tokenizer.hasMoreElements()) {
   String o = (String)tokenizer.nextElement();
   ......
   .......
}

または代わりに

String[]  splitted = inputString.split(delimter);
于 2012-10-16T04:44:24.547 に答える
0

よく見てください:

Iterator<String> st = new StringTokenizer(s);

タイプ Iterator の変数 st を宣言しており、その上でタイプ StringTokenizer の新しいオブジェクトを作成しています。公式仕様では:

http://docs.oracle.com/javase/1.4.2/docs/api/java/util/StringTokenizer.html

トークン化された文字列を反復する例を見ることができます。

于 2012-10-16T04:40:50.320 に答える