расщепление массивов - PullRequest
       10

расщепление массивов

2 голосов
/ 30 марта 2009

Как разделить массив на четыре подмассива в Java?

Ответы [ 4 ]

10 голосов
/ 30 марта 2009

Создайте 2 массива той длины, которую хотите получить.

И используйте

System.arraycopy(src, srcPos, dest, destPos, length)

для копирования значений из оригинала в два новых целевых массива.

Пример:

    int[] original = new int [13];
    int[] a = new int[3];
    int[] b = new int[10];

    System.arraycopy(original, 0, a, 0, 3);
    System.arraycopy(original, 3, b, 0, 10);
1 голос
/ 26 сентября 2012

Смотрите мой ответ здесь:

Разделить массив на несколько массивов с определенным максимальным размером

Какой максимальный размер вы должны оценить, разделив длину массива на число подмассивов (остерегайтесь результатов с плавающей точкой, это должно быть целое число).

1 голос
/ 30 марта 2009

В дополнение к тому, что уже было сказано, вы можете использовать один из методов Arrays.copyOfRange (...) , доступных в классе java.util.Arrays.

1 голос
/ 30 марта 2009

Обычное разбиение ... Я бы использовал один из двух способов ниже:

  1. Если вам нужно переместить группы элементов в отдельные массивы, например, элементы от 0 до 10 в массив 1, от 11 до 20 в массив 2 и т. Д., Я бы создал четыре массива и использовал System.arraycopy() статический метод:

    System.arraycopy(sourceArray, sourceStart, destArray, destStart, length);
    
  2. Если вам необходимо проверить, куда должен идти конкретный элемент, создайте четыре массива, четыре переменные счетчика индекса и выполните цикл по элементам исходного массива. Проверьте условие и добавьте его в один из четырех массивов, увеличивая соответствующий счетчик индекса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...