Java: есть ли простой способ выбрать подмножество массива?
У меня есть String[]
, у которого есть как минимум 2 элемента.
Я хочу создать новый String[]
, который содержит элементы 1 через остальные. Итак, в основном, просто пропустив первый.
Можно ли это сделать в одной строке? легко?
Ответы
Ответ 1
Arrays.copyOfRange(array, 1, array.length);
copyOfRange
был добавлен в Java 1.6. Если вы не обновляетесь с этим, вы можете использовать:
-
ArrayUtils.subarray(array, 1, array.length)
из Apache commons-lang
-
System.arraycopy(..)
- довольно недружественный с длинным списком параметров.
Ответ 2
String[] subset = Arrays.copyOfRange(originalArray, 1, originalArray.length);
См. также:
Ответ 3
Также может использоваться Stream API:
String[] array = {"A", "B"};
Arrays.stream(array).skip(1).toArray(String[]::new);