gpt4 book ai didi

java - 提示用户在 Java 中输入是或否

转载 作者:行者123 更新时间:2023-11-29 06:34:48 25 4
gpt4 key购买 nike

如何提示用户循环代码 yes to loop no to exit and wrong input 打印错误的输入并返回语句即。 “你想输入另一个名字吗:”

import java.util.Scanner;

public class loop {
public static void main(String[] args){
Scanner kbd = new Scanner (System.in);
String decision;
boolean yn;
while(true){

System.out.println("please enter your name");
String name = kbd.nextLine();

System.out.println("you entered the name" + name );

System.out.println("enter another name : yes or no");
decision = kbd.nextLine();

switch(decision){
case "yes":
yn = false;
break;
case "no":
yn = true;
break;
default :
System.out.println("please enter again ");
return default;
}
}
}
}

最佳答案

  1. 如果你不使用 Java 7,你就不能使用 switch-strings
  2. while (true) 更改为 while (yn) 以便在他键入“no”时停止,并更改 boolean yn;boolean yn = true;并更改案例中的规则。

    case "yes":
    yn = false;
    break;
    case "no":
    yn = true;
    break;

    yn = true; 如果 "is";

    yn = false; 如果“否”;

    您可以使用 while (!yn) 更改 while 内的条件,但更直观的是让 yn true 如果是; false 如果没有。

  3. return default; 没有多大意义,如果你想让用户在出错的情况下重复..你应该做一个新的 while (true) 重复,直到他写出正确的代码。我会写另一个方法。

你可以这样做

Scanner kbd = new Scanner (System.in);

String decision;

boolean yn = true;
while(yn)
{
System.out.println("please enter your name");
String name = kbd.nextLine();

System.out.println("you entered the name" + name );

System.out.println("enter another name : yes or no");
decision = kbd.nextLine();


switch(decision)
{
case "yes":
yn = true;
break;

case "no":
yn = false;
break;

default:
System.out.println("please enter again ");
boolean repeat = true;

while (repeat)
{
System.out.println("enter another name : yes or no");
decision = kbd.nextLine();

switch (decision)
{
case "yes":
yn = true;
repeat = false;
break;

case "no":
yn = repeat = false;
break;
default:
repeat = true;
}
}
break;
}
}

是的,它会重复 decision 代码,但我认为它是如何创建的,这是唯一的方法。

关于java - 提示用户在 Java 中输入是或否,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23047309/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com