我正在构建一个程序来计算用户输入的最小值,最大值和平均值。 当用户输入0或负数时,程序退出循环。
我目前正致力于构建输入处理器。但我有一些错误。我之前没有使用过条件,所以我必须在那里的某个地方犯错误。
对于我如何能做得更好的任何建议都将不胜感激。
错误:
questionAvg.java:17: error: illegal start of expression
if(input_into.nextInt() !=0) || input_into.nextInt < 0){
^
questionAvg.java:17: error: ';' expected
if(input_into.nextInt() !=0) || input_into.nextInt < 0){
^
questionAvg.java:19: error: 'else' without 'if'
} else{
代码:
import java.util.*;
public class questionAvg
{
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.hasNextint()){
System.out.println("Type another int or exit");
if(input_into.nextInt() !=0) || input_into.nextInt < 0){
collector.add(input_into.nextInt());
} else{
System.out.println("You entered 0 or a negative number. Now calculating....");
}
}
}
}
答案 0 :(得分:2)
您在错误的地方有一个括号,并且您将jQuery
视为公共成员变量而不是方法:
nextInt
需要:
if(input_into.nextInt() !=0) || input_into.nextInt < 0)
否则你将在第一个条件之后结束if语句,从而结束所有错误。
答案 1 :(得分:1)
在)
之前移除if
语句中的额外||
,并且在调用()
时也错过了input_into.nextInt() < 0
。应该是。
if(input_into.nextInt() !=0 || input_into.nextInt() < 0){
你也在if(input_into.nextInt() !=0 || input_into.nextInt < 0)
读取整数两次,然后在下一行collector.add(input_into.nextInt());
读取整数。你可以做
int inp=input_into.nextInt();
if( inp!=0 || inp < 0){
collector.add(inp);
答案 2 :(得分:1)
你错了:
if(input_into.nextInt() !=0) || input_into.nextInt < 0)
应该是
if(input_into.nextInt() !=0 || input_into.nextInt < 0)
答案 3 :(得分:0)
请尝试以下代码(我已经测试过):
import java.util.ArrayList;
import java.util.Scanner;
public class questionAvg {
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.hasNextInt()) {
System.out.println("Type another int or exit");
if ((input_into.nextInt() != 0) || (input_into.nextInt() < 0)) {
collector.add(input_into.nextInt());
} else {
System.out.println("You entered 0 or a negative number. Now calculating....");
}
}
}
}