Java array out of bound issue
У меня есть код для Java, в котором я создаю список 2 массивов из 2-мерного массива.. Но я получаю массив из связанного исключения.. Я передаю 2 мерного массива в метод класса ответа.. Но это не работает..
import java.io.*; import java.util.*; public class Abc { static void answer(Integer[][] a,int l){ Integer[] un = new Integer[l]; Integer[] un1 = new Integer[l]; final Integer z = 0; int max1=0,max2=0,count1=0,count2=0; int ind=0; ArrayList<integer> arr1 = new ArrayList<integer>(Arrays.asList(a[0][l])); // Line 14 ArrayList<integer> arr2 = new ArrayList<integer>(Arrays.asList(a[1][l])); for(int i=0;i<l;i++){ if(i % 2 == 0){ max1 = Collections.max(arr1); count1 += max1; ind = arr1.indexOf(max1); arr1.set(ind,z); arr2.set(ind,z); } else{ max2 = Collections.max(arr2); count2 += max2; ind = arr2.indexOf(max2); arr2.set(ind,0); arr1.set(ind,0); } } if(count1 < count2){ System.out.println("Second"); } else{ if(count1 > count2){ System.out.println("First"); } else{ System.out.println("Tie"); } } } public static void main(String[] args) { Scanner sc = new Scanner(System.in); int times = sc.nextInt(); for(int i=0;i<times;i++){ int val = sc.nextInt(); Integer[][] arr = new Integer[2][val]; for(int k=0;k<2;k++){ for(int j=0;j<val;j++){ arr[k][j] = sc.nextInt(); } } Abc.answer(arr,val); } } }
Ошибка: исключение в потоке "main" java.lang.ArrayIndexOutOfBoundsException: 3
at Abc.answer(Abc.java:14)
в Abc.main(Abc.java:80)
Заранее Спасибо!
Что я уже пробовал:
Я передаю 2-мерный массив из основного метода в метод ans.. Но я получаю исключение ArrayOutOfBound..