開始する前に、これは繰り返しの質問ではありません。私はStringTokenzer countTokens() returns 1 with any stringと題された質問を読んだが、それは適切に区切られた文字列が正しく数えられるが、適切に区切られた入力は正しくないという事実に対処していない。countTokens()は常にユーザー入力で1を返します
StringTokenizerクラスを使用すると、countTokensメソッドがcountTokensの引数が定義されたStringかユーザー定義のStringかどうかによって異なる結果が返されることがわかりました。その代わりに)アルファブラボーチャーリーデルタ
Scanner in = new Scanner(System.in);
String phrase;
System.out.print("Enter a phrase: ");
phrase = in.next();
StringTokenizer token = new StringTokenizer(phrase);
int count = token.countTokens();
System.out.println(count);
[docs](https://docs.oracle.com/javase/8/docs/api/java/util/StringTokenizer.html)から)これをスローしてください: "* StringTokenizerは従来のクラスです**互換性のために保持されていますが、新しいコードではその使用が推奨されていません*** "。 'String#split(String)'の使用を検討したいかもしれません。 –
入力を感謝しますが、クラスAssignmentのStringTokenizerクラスを使用する必要があります。 –