我在打印用 ArrayList 声明的数组的值时遇到问题。我正在使用 enchanced for 来打印它的值,但是如果我想对它们求和怎么办。import java.util.ArrayList;import java.util.Scanner;public class Program{public static void main(String[] args){ int sum = 0; ArrayList<Integer> numbers = new ArrayList<Integer>(); Scanner input = new Scanner(System.in); int x = input.nextInt(); while (x != -1){ numbers.add(x);//xonoyme ta stoixeia ston numbers x = input.nextInt(); } for (int y: numbers){ sum = sum + numbers; System.out.print(y + " "); } System.out.print("to athroisma einai: " + sum);}}错误在命令 sum = sum + numbers 中;
1 回答
天涯尽头无女友
TA贡献1831条经验 获得超9个赞
这里:
sum = sum + numbers;
numbers是您正在迭代的数字列表。
你可能的意思是:
sum = sum + y;
sum是一个原始的 int 变量。该+
运营商只允许你在这里添加其他原始数值。您不能将 a 添加List<Integer>
到 int 值。
或者,您可以在此处使用 Java 8 流:
numbers.stream().mapToInt(Integer::intValue).sum();
也总结了您列表中的所有值。
添加回答
举报
0/150
提交
取消