[英]java - error incompatible types: unexpected return value - iterating through a list
I am asked to write code that will display the total sum of the integers in the numbers list. 我被要求编写代码,以显示数字列表中整数的总和。 I am to make use of the total variable that has already been declared for me and use a for loop to iterate through the elements of the list. 我要利用已经为我声明的总变量,并使用for循环遍历列表中的元素。
The issue is I keep getting the error incompatible types: unexpected return value.' 问题是我不断收到错误不兼容的类型:意外的返回值。 When I try changing void in the main method to int, I get the error 'void type not allowed here.' 当我尝试将main方法中的void更改为int时,出现错误“此处不允许使用void类型”。 Any ideas on how to fix this? 有想法该怎么解决这个吗?
import java.util.ArrayList;
public class ArrayListTestProgram {
public static void main(String args[]) {
int total = 0;
ArrayList<Integer> numbers;
numbers = new ArrayList<Integer>();
numbers.add(1);
numbers.add(45);
numbers.add(23);
numbers.add(87);
numbers.add(89);
numbers.add(213);
System.out.println("The ArrayList looks like this: " + numbers);
System.out.println("It has " + numbers.size() + " elements in it");
System.out.println("The 5th element in it is: " + numbers.get(4));
int sum = 0;
for (int i = 0; i < numbers.size(); i++) {
sum += numbers.get(i);
return sum;
}
System.out.println(sum);
}
}
Remove the return line: 删除回车线:
for (int i = 0; i < numbers.size(); i++) {
sum += numbers.get(i);
// return sum;
}
Your main has return type void
and you are returning an int
. 您的main的返回类型为void
并且您正在返回一个int
。
You can`t set return type for main() metod. 您不能为main()方法设置返回类型。 It should be void. 它应该是无效的。 You can create new static metod 您可以创建新的静态方法
public static giveMeSumOfList(List<Integer> list){
int sum = 0;
for (int i = 0; i < list.size(); i++) {
sum += numbers.get(i);
return sum;
}
After you can call this metod from main and other static metods. 之后,您可以从主要和其他静态方法中调用此方法。
Remove print around System.out.println(sum)
and remove return sum
删除System.out.println(sum)
周围的打印并删除return sum
import java.util.ArrayList;
public class ArrayListTestProgram {
public static void main(String args[]) {
int total = 0;
ArrayList<Integer> numbers;
numbers = new ArrayList<Integer>();
numbers.add(1);
numbers.add(45);
numbers.add(23);
numbers.add(87);
numbers.add(89);
numbers.add(213);
System.out.println("The ArrayList looks like this: " + numbers);
System.out.println("It has " + numbers.size() + " elements in it");
System.out.println("The 5th element in it is: " + numbers.get(4));
int sum = 0;
for (int i = 0; i < numbers.size(); i++) {
sum += numbers.get(i);
}
System.out.println(sum);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.