Я написал код на Java, чтобы сопоставить пары в классах (для назначений или сидя или что-то еще), поэтому я использовал 2D-массив. The BlueJ говорит мне, что в последнем цикле моего кода есть ArrayOutOfBoundsException, и я не смог его решить. Может ли кто-нибудь сказать мне, как это исправить?Что случилось с моим 2D-массивом?
byte pref;
System.out.println("How many children are in your class");
byte children = reader.nextByte();
byte[][] students = new byte[children][children]; //Each cell contains the rank of the match
System.out.println("Enter each child's preference, according to their number:");
for (byte b=0;b<students.length;b++)//Ranks each match
{
System.out.print((b+1)+") ");
pref = reader.nextByte();
pref--;
students[b][pref]++;
}
System.out.println("The matches got 2 points are:");
for (byte b=0;b<students.length;b++)
{
for (byte c=0;c<students.length;b++)
{
if (students[b][c]==2)
System.out.print(b+"+"+c);
}
}
Благодаря
Вы увеличиваете 'b' во втором цикле ... вы хотели это сделать? –