2016-10-11 2 views
-6

Я хочу добавить элементы из двух массивов в Java. Я написал этот код:Добавить два массива Java

public static void sum (int [] a; int [] b){ 

    int sum=new sum[a.length]; 

    for (int i=0;a.length;i++){ 
     sum[i]=a[i]+b[i]; 
    } 
} 

этот код не работает, потому что сумма только первый элемент из двух массивов. Как я могу решить эту проблему?

+7

этого код не побежит и имеет несколько syntacitcal ошибок, в качестве условия цикла или с помощью ',' отделить параметр. – SomeJavaGuy

ответ

1
public static void sum (int [] a, int [] b){ //, instead of ; 

    //instead of int sum = new sum[a.length]; 
    int[] sum = new int[a.length]; 

    //i < a.length isntead of a.length 
    for (int i=0; i < a.length; i++){ 
    sum[i] = a[i] + b[i]; 
    } 
} 

Расширенная версия для массивов разной длины:

public static void sum (int [] a, int [] b){ 

    int[] sum = new int[Math.max(a.length, b.length)]; 

    for (int i=0; i < sum.length; i++){ 
    sum[i] = (i < a.length ? a[i] : 0) + (i < b.length ? b[i] : 0); 
    } 
} 
+0

Я ошибся код, я написал для (int i = 0; i user3582433

+1

Что делать, если оба массива имеют разную длину? – mhasan

+0

@mhasan, обновленный) –

1
int[] sum = new int[a.length] 

должен работать. нет типа данных «суммы»

и, конечно же,

i < a.length 
+0

и, как сказал Кевин Эше, ваши параметры должны быть разделены, а не; – bloodscript

+1

благодарит Павне Сингха – bloodscript

Смежные вопросы