Что будет напечатано в результате выполнения данного кода?

import java.util.Arrays;
class ArraysComparing {
    public static void main(String...args) {
        int[] i1[] = {{1,2,3}, {0,0,0}};
        int[][] i2 = {{1,2,3}, {0,0,0,}};
        int[][] i3 = new int[2][3];
        System.arraycopy(i1, 0, i3, 0, i3.length);
        System.out.println(Arrays.equals(i1, i2));
        System.out.println(Arrays.equals(i1, i3));
        System.out.println(Arrays.deepEquals(i1, i2));
    }
}
Explanation
В массивах i1 и i2 ссылки на вложенные массивы разные, поэтому первый equals вернет false.
Во втором случае ссылки будут одинаковыми, соответственно true.
В третьем случае производится сравнение элементов, все одинаковы, поэтому true

Слідкуй за CodeGalaxy

Мобільний додаток Beta

Get it on Google Play
Зворотній Зв’язок
Продовжуйте вивчати
тести з Java
Cosmo
Зареєструйся Зараз
або Підпишись на майбутні тести