Конвертация массива в список в Java

Перейти в телеграм, чтобы получить результаты теста
Пройдите тест, узнайте какой профессии подходите
Вам подходит профессия:
Аналитик данных
Основные характеристики профессии:
не нужно общаться с людьми
логика
анализ
поиск закономерностей
работа с числами
Построим личный план перехода в профессию для вас бесплатно
- убедитесь, подходит вам профессия или нет
- получите оценку своих навыков и шансов освоить профессию
- забронируем за вами скидку 55% на обучение, пока думаете
Позвоним вам в течение часа — не пропустите звонок
Чем занимается специалист
Специалист создает все онлайн-продукты, программы, приложения, игры и сайты, которыми вы пользуетесь каждый день.
Создает — значит описывает последовательность действий на специальном языке программирования. Настраивает действия, что должно произойти, если пользователь нажмет на кнопку.
Средняя зарплата начинающего специалиста в первый год работы:
от 50 000 ₽
Что надо знать и уметь, чтобы выучиться на аналитика:
- базовое школьное образование
- уверенные навыки работы с компьютером
- опыт выполнения задач в конкретные сроки
Глубокие знания математики или английского не нужны
Почему мы рекомендуем вам эту профессию
Ваш скрытый талант:
наблюдательность
В Java, при работе с массивами и коллекциями, часто возникает задача преобразования массива в список. Но при использовании метода Arrays.asList(), Java SE 1.4.2 и
В Java, при работе с массивами и коллекциями, часто возникает задача преобразования массива в список. Но при использовании метода Arrays.asList()
, Java SE 1.4.2 и последующие версии ведут себя по-разному.
Вот пример кода:
int[] numbers = new int[] { 1, 2, 3 };
Arrays.asList(numbers);
В Java SE 1.4.2, этот код возвращает список, содержащий элементы 1, 2, 3. Однако, начиная с Java SE 1.5.0, этот же код возвращает список, содержащий массив numbers
.
Это может привести к ошибкам в коде, особенно если этот момент упущен:
Assert.assertTrue(Arrays.asList(numbers).indexOf(4) == -1);
Данный пример пройдет в Java SE 1.4.2, но не пройдет в Java SE 1.5.0 и последующих версиях, так как Arrays.asList(numbers)
возвращает список, содержащий массив numbers
, а не отдельные элементы.
Для преобразования массива примитивов в список в более новых версиях Java, можно использовать циклы или стримы.
Пример с использованием цикла:
int[] numbers = new int[] { 1, 2, 3 };
List<Integer> list = new ArrayList<>();
for (int i: numbers) {
list.add(i);
}
Пример с использованием стримов:
int[] numbers = new int[] { 1, 2, 3 };
List<Integer> list = Arrays.stream(numbers).boxed().collect(Collectors.toList());
Оба этих подхода вернут список, содержащий элементы 1, 2, 3, независимо от версии Java.
Добавить комментарий