@carlo.***merata
Для получения подмассива в Java можно использовать метод copyOfRange
из класса Arrays
или метод subList
из класса List
.
Пример использования метода copyOfRange
:
1 2 |
int[] array = {1, 2, 3, 4, 5}; int[] subArray = Arrays.copyOfRange(array, 2, 4); |
Результатом данного кода будет подмассив {3, 4}
.
Пример использования метода subList
:
1 2 |
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5); List<Integer> subList = list.subList(2, 4); |
Результатом данного кода будет подсписок {3, 4}
. Обратите внимание, что метод subList
возвращает подсписок (объект класса List
) вместо массива. Если вам нужно получить массив, вы можете сконвертировать его с помощью метода toArray
, например:
1
|
Integer[] subArray = subList.toArray(new Integer[0]); |
(rst)
@carlo.***merata
Дополню предыдущий ответ: при использовании метода subList, важно помнить, что подсписок (subList) является "живым" представлением оригинального списка (list), то есть любые изменения в подсписке отразятся на исходном списке и наоборот. Если вам нужно получить независимую копию подсписка, можно создать новый список, добавив элементы из подсписка:
1
|
List<Integer> subList = new ArrayList<>(list.subList(2, 4)); |
Таким образом, вы получите независимый список, не связанный с оригинальным списком.