Java.lang.arrayindexoutofboundsexception:3 ошибка в компиляции java
Здравствуйте, я пытаюсь отсортировать программу 2d-массива с помощью пузырьковой сортировки, но когда я компилирую программу, она запускается в определенную часть программы, она распечатывает 2d-массив, но, когда она доходит до сортировочной части, я получаю ошибку "java.lang.Arrayindexoutofboundsexception:3". Пожалуйста, скажите мне, как избавиться от этой ошибки. Смотрите код ниже.
Что я уже пробовал:
import java.util.Random; import java.util.Scanner; public class arrays { public static void main(String[] args) { Random ran= new Random(); Scanner scan = new Scanner(System.in); int num,secnum,temp,i,j,k; System.out.println("Please enter a num."); num= scan.nextInt(); System.out.println("Please enter another value."); secnum = scan.nextInt(); int arrayi[][] = new int[num][secnum]; for( i =0; i< num ; i++) { for( j =0; j< secnum; j++) { arrayi[i][j]= ran.nextInt(100); } } System.out.println("The array is below:"); for(i =0; i< num ; i++) { for( j =0; j< secnum; j++) { System.out.print(arrayi[i][j] + " "); } System.out.println(); } for( i =0; i< num ; i++) { for( j =0; j< secnum; j++) { for( k=0; k <secnum; k++) { if(arrayi[i][k] > arrayi[i][k+1] ) { temp = arrayi[i][k]; arrayi[i][k] = arrayi[i][k+1]; arrayi[i][k+1] = temp; } } } } System.out.println("Sorted array is below:"); for( i =0; i< num ; i++) { for( j =0; j< secnum; j++) { System.out.print(arrayi[i][j] + " "); } System.out.println(); } scan.close(); } }