我正在开发一个课程项目程序。
我需要使用scanner类读取用户的输入。然后我需要通过while循环将这些数据传递给一个ArrayList。
在我的while循环中,我需要一个条件语句来检查是否输入了0或负数。
如果用户输入负数或0,则循环结束,代码进入下一个流程...
我目前面临的问题是:
- 我所有的输入值都没有被处理
- 我必须输入0三次才能退出循环
- 0被传递到我的ArrayList中,而我不想要它
这是我目前的代码:
import java.util.*;
public class questionAvg3
{
public static void main(String[]args)
{
Scanner input_into = new Scanner(System.in);
ArrayList<Integer> collector = new ArrayList<Integer>();
System.out.println("Enter 0 or a negative number to end input");
System.out.println("Enter a positive integer to populate the arraylist");
while ((input_into.nextInt() !=0) || (input_into.nextInt() < 0)){
System.out.println("Type another int or exit");
collector.add(input_into.nextInt());
}
int minValue = collector.get(0);
int maxValue = collector.get(0);
//int avgValue = collector.get(0);
//int total = 0;
for(Integer i: collector){
if( i < minValue) minValue = i;
if( i > maxValue) maxValue = i;
}
System.out.println("The max value int is: " + maxValue);
System.out.println("The min value int is: " + minValue);
}
}
input
。 - gonzoinput = input_into.nextInt();
即可。 - gonzo