如何为此特定任务选择和编写循环?

  • 本文关键字:循环 选择 任务 java loops
  • 更新时间 :
  • 英文 :


我对Java很陌生。对不起,如果这是一个蹩脚的问题。我有这段代码。这显然不是全部。

char option = scan.next().charAt(0); 
for (option !='a'||option !='b'||option !='c'||option !='d'||option !='e'||option !='f'||option !='q') {
System.out.println("Please pick an option from the menu above");
}
int lengthOne = stringOne.length(); //Getting the lengths for each string           
int lengthTwo = stringTwo.length();
if (option == 'a'|| option == 'A') { //If the user inputs a
if (lengthOne == lengthTwo) { //If both lengths are equal
System.out.println("The strings are the same length");
}

寻找一些关于我应该为此代码使用哪个循环的建议。选项将是 A-F,然后是 Q 退出。

while 循环对于您要完成的任务来说可能看起来很混乱。我会在"do while"循环中使用 Switch 语句。

如果用户输入与"案例"不匹配,则它将转到默认值。

当用户输入"q"退出时,boolean validSelection转到true,您将退出"do while"循环。

public static void main( String[] args )
{
Scanner scan = new Scanner( System.in );
boolean validSelection = false;
do
{
System.out.println( "Please pick an option from the menu above" );
char option = scan.next().charAt( 0 );
switch( option )
{
case 'a':
break;
case 'b':
break;
case 'c':
break;
case 'd':
break;
case 'e':
break;
case 'f':
break;
case 'q':
validSelection = true;
break;
default:
System.out.println( "Choice invalid." );
break;
}
}
while( validSelection == false );
}
}

在循环内添加扫描。

char option = scan.next().charAt(0); 
while (option !='a'||option !='b'||option !='c'||option !='d'||option !='e'||option !='f'||option !='q') {
System.out.println("Please pick an option from the menu above");
option = scan.next().charAt(0);
}

试试这个

Scanner scan = new Scanner(System.in);
char option = scan.next().charAt(0); 
while (option != 'a' && option !='b' && option != 'c'&& option !='d'&& option !='e'&& option !='f'&& option !='q') {
System.out.println("Please pick an option from the menu above");
option = scan.next().charAt(0);
}

您将需要 AND 而不是 OR,否则它将无法工作

最新更新