#java #methods #static
#java #методы #статический
Вопрос:
(Только начал изучать Java) Я пытаюсь сделать тест, но он не выводит нужную мне информацию, он пропускает метод «спросить» и выводит только основной метод. Я должен сохранить его как общедоступную статическую строку.
импортируйте javax.swing.JOptionPane;
проверка общедоступного класса {
public static String ask(String question) {
question= "What is the biggest animal in the world?n";
String optionA = "Blue Whalen"; //( Correct answer)
String optionB = "Elephantn";
String optionC = "Giraffen";
String optionD = "Lionn";
String optionE = "Rhinon";
// Question string
question = "A. " optionA;
question = "B. " optionB;
question = "C. " optionC;
question = "D. " optionD;
question = "E. " optionE;
while(true) {
String answer = JOptionPane.showInputDialog(question);
answer = answer.toUpperCase();
// Correct answer // Return Correct answer
if(answer.equals("A")) {JOptionPane.showMessageDialog(null, "Correct!");return("A");}
// Incorrect answer
else if (answer.equals("B") || answer.equals("C")|| answer.equals("D") || answer.equals("E")){JOptionPane.showMessageDialog(null,"Incorrect. Pleae try again");}
// Invalid answer
else {
JOptionPane.showMessageDialog(null,"Invalid answer. Please enter A, B, C, D, or E.");}}
}
public static void main(String[] args) {JOptionPane.showInputDialog("TEST");
}
}
Вывод: тест
Комментарии:
1.
public static void main(String[] args)
является точкой входа в класс. Если вы хотите, чтобы выполнялся другой код, вам нужно вызвать другой код из main() .2. Какой странный вопрос, вы написали этот код?
3. Это не «пропуск»
ask
метода, ваш код никогда его не вызывает. Замените свой тестовый диалог наmain
... { ask(); }
Ответ №1:
Как я понимаю, вы хотите, чтобы был запущен метод «ask». Попробуйте поместить вызов метода в основной метод.
public static void main(String[] args) {
JOptionPane.showInputDialog("TEST");
ask("");
}
Комментарии:
1. Я заставил его работать с вашей помощью, спасибо.