Привет, у меня возникла проблема с созданием метода stringtokenizer, который позволяет пользователю вводить строки, а также подсчитывать и печатать токены. Может ли кто-нибудь помочь мне решить ошибку? Он говорит, что конструктор не определен.
public class StringTokenizer
{
public static void main(String[ ] args)
{
Scanner keyboard;
String inputSentence;
StringTokenizer stok = null; //declare a reference to hold the address of a StringTokenizer object
keyboard = new Scanner(System.in);
System.out.println("Enter a line of text: ");
inputSentence = new String(keyboard.nextLine( ) );
while(!(inputSentence.equals("quit")))
{
stok = new StringTokenizer(inputSentence);//the constructor that take a String and uses a space as the delimeter
while (stok.hasMoreTokens());
{
System.out.println("Number of tokens: " + stok.countTokens( ));
System.out.println(stok.nextToken( ));
}
System.out.println("Enter another line of data or quit\n" );
inputSentence = keyboard.nextLine( );
}
System.out.println("Goodbye");
}//end of main
} //end of class




Переименуйте класс твой. Вы находитесь в тени java.util.StringTokenizer; альтернативно,
java.util.StringTokenizer stok = null;
а также
stok = new java.util.StringTokenizer(inputSentence);
Но, будет меньше путаницы, если вы переименуете свой класс.
Согласованный. Никогда не рекомендуется называть свой класс так же, как любой класс в любом месте пакета java.
Я сделал еще один класс с другим именем, а также импортировал java.util.*; ошибка все еще происходит знаете почему?
@DavePhan Вы не удалили существующий класс в текущем пакете с именем StringTokenizer (и, таким образом, вы все еще слежка).
@ElliottFrisch На самом деле я сделал второй на другом ноутбуке, а также изменил имя класса на первом. Предыдущая ошибка, как говорят, для конструктора, но я понятия не имею, что это такое
также есть ошибки в hasMoreTokens и nextToken, хотя это не ново. Я думал, что это связано с ошибкой конструктора, поэтому забыл упомянуть в посте, но @Carcigenicate напомнил мне об этом.
О да, спасибо, что рассказали мне о другой ошибке, которую я тоже забыл указать. И да, компилятор говорит, что ошибки были в первую очередь конструктором, я не знаю, какой конструктор должен быть с этим, поскольку я вспомнил, что мой профессор сказал, что мне нужно только объявить экземпляр, поскольку класс уже находится в пакете java.util. Я сделал еще один с другим именем класса, чтобы сделать его менее запутанным, а также импортировал java.util, ошибки все еще случаются. Не могли бы вы помочь мне с конструктором?