我需要退出以下代码而不使用break,否则我的教授会给我一个0.什么是最有效的方法?对不起,我是个菜鸟。请帮忙。基本上,他希望程序在逻辑上退出。这正是他所说的。另外,为什么人们不喜欢休息?我的意思是该程序与break完美配合。
//********Import statements*******//
import java.util.Random;
import java.util.Arrays;
public class randomNumbers
{
public static void main(String[] args)
{
//***********Initialize variables************//
Random rand = new Random();
int[] numbers = new int[10]; //Initialize array
//**********************************************************************************//
//For loop generates 10 Random Numbers in the range 1 - 23
for(int i = 0; i < numbers.length; i++)
{
//Generate random numbers between 1-23
int randomNum = rand.nextInt((23-1)+ 1) + 1;
//if number generated is less than 20
if(randomNum < 20)
{
//number generated is part of numbers to be outputted
numbers[i] = randomNum;
}
else //else statement, quit program as number is greater than 20
{
break;
} //end if
}//end for loop
//Display output
System.out.println("Numbers Generated: " + Arrays.toString(numbers));
//**********************************************************************************//
} //end main
} //end program
答案 0 :(得分:5)
使用类似do...while
int randomNum = ???
do {
randomNum = ???
} while ( randomNum < 20 );
System.out.println("Random was >= 20");
答案 1 :(得分:4)
要退出void
方法(任何 void
方法,包括main()
方法),请使用:
return;
即。将break
替换为return
。
答案 2 :(得分:2)
因此循环的目标是继续,直到满足条件。确定该条件是什么并强制满足条件。在这种情况下,请i
等于numbers.length
。
旁注
正如波希米亚人所说,return
是另一个很好的选择。当方法开始返回值时,这将变得更加相关。除非返回类型为Return
,否则void
是退出包含循环的方法的常用方法。
答案 3 :(得分:1)
您可以添加条件循环。 创建布尔属性并检查是否必须完成循环。
boolean finish = false;
for(int i = 0; i < numbers.length && !finish; i++)
{
.
.
.
if(randomNum > 20){
finish = true;
}
}