如何解决我的 java 程序中的 if 语句在用户输入中遇到问题
import java.util.Scanner;
public class Rudra{
public static void main(String[] args) {
Scanner myObj = new Scanner(system.in);
System.out.println(".........");
System.out.println("Welcome,want to test you're cuteness percentage?");
String answer = myObj.nextLine();
System.out.println("Please enter your name:");
String subAnswer = myObj.nextLine();
System.out.println("Your age:");
int lastAnswer = myObj.nextInt();
if (subAnswer.equals("Shruti") && lastAnswer == 18) {
System.out.println(subAnswer + "-you're 90% cute");
} else if (subAnswer.equals("Rimjhim") && lastAnswer == 12) {
System.out.println(subAnswer + "-you're 50% cute");
} else if (subAnswer.equals("Swati") && lastAnswer == 13) {
System.out.println(subAnswer + "-you're 69% cute");
} else {
System.out.println("You've no cuteness ");
}
}
}
以下是我的代码。我希望当第一个问题被问到想要检查你的可爱程度并且用户回答是时,它说欢迎并继续询问姓名和年龄。否则,如果用户回答否,它会说好的,然后不会询问姓名和年龄,如果用户回答不是是或否,它会说请回答是或否。我正在尝试将其添加到我的程序中。从过去 1 周开始尝试,但没有发生。请帮帮我...
解决方法
你错过了这个
System.out.println("Welcome,want to test you're cuteness percentage?");
String answer = myObj.nextLine();
if(answer.equalsIgnoreCase("yes"))
///Your code
else if(answer.equalsIgnoreCase("no"))
///Your code
else
////Your code
,
将您的提示置于 do
或 while
循环中。如果用户输入了除 y
或 n
之外的任何内容,则应通知用户输入无效并提供重试选项。像这样:
Scanner userInput = new Scanner(System.in);
String answer = "";
while(answer.isEmpty()) {
// Prompt to User
System.out.println("Welcome:");
System.out.println("Do you want to test you're cuteness percentage?");
System.out.print("Your Choice (y/n): --> ");
// Get User input.
answer = userInput.nextLine();
// If 'answer' does not validate...
if (!answer.matches("(?i)[yn]")) {
// RegEx: (?i) = Ignore Letter case
// [yn] = Only letters Y,y,N,and n are acceptable.
System.out.println("Invalid response! Must be either 'y' or 'n'! Try again...\n");
answer = ""; // Empty answer so to loop again.
}
}
System.out.println("Your answer was: " + answer);
以类似的方式验证您的其他提示。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。