与Java的Integer Array合作



如果仅a2.SumOfArray({12}, 12);,则此数组的输出显示了汇编错误被评论,它编译。如何以阵列形式放置并获得工作输出?谢谢。

import java.util.Scanner;
class Calculation
{
Scanner myScanner = new Scanner(System.in);
int total, I;
int SumOfArray(int data[], int size){
     System.out.print("Enter size of array: ");
     size = myScanner.nextInt();
         for(i=0; i<=size; i++){
             System.out.println("Enter number: ");
             data[i]=myScanner.nextInt();
             total=total+data[i];
         }
     System.out.println("Sum of Array: "+ total);
     return total;
 }

public class Main
{
    public static void main(String args[]){
        Calculation a2 = new Calculation();
        **a2.SumOfArray({12}, 12);**
    }
}

简单地替换:

a2.SumOfArray({12}, 12);

a2.SumOfArray(new int[]{12}, 12);

但是,您的代码有编译问题尝试找到这些问题并修复。

乍一看您的代码,有几个错误:(它们不是Java8 btw的特定错误(

  1. 您的SumOfArray正在服用两个int,以进行输入而不是数组。将SumOfArray(int data[], int size)更改为SumOfArray(int[] data, int size),将int[]数组用于输入。在Java int[]中是指int数组。

  2. 然后您需要像以下a2.SumOfArray(new int[]{1,2,3}, 12);一样传递数组,您需要关键字new,因此Java编译器知道为此新数组保留内存,并且您需要int[]来告诉编译器这是INT数组。<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

最新更新