猿问

如何使用普通 For 循环打印动态数组

我在打印用 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 中;


精慕HU
浏览 175回答 1
1回答

天涯尽头无女友

这里:sum&nbsp;=&nbsp;sum&nbsp;+&nbsp;numbers;numbers是您正在迭代的数字列表。你可能的意思是:sum&nbsp;=&nbsp;sum&nbsp;+&nbsp;y;sum是一个原始的 int 变量。该+运营商只允许你在这里添加其他原始数值。您不能将 a 添加List<Integer>到 int 值。或者,您可以在此处使用 Java 8 流:numbers.stream().mapToInt(Integer::intValue).sum();也总结了您列表中的所有值。
随时随地看视频慕课网APP

相关分类

Java
我要回答