Научитесь создавать экземпляр списка Java, содержащий только один элемент, используя методы Arrays.asList(), Collections.singletonList(), List.of() и Stream API.
Метод | Изменчивость | Описание | Java-версия |
---|---|---|---|
Коллекции.singletonList(“данные”) | Неизменный | Самый простой подход для этой конкретной цели. | Ява 1.2 |
Список.из(“данных”) | Неизменный | Краткий синтаксис. | Ява 9+ |
Массивы.asList(“данные”) | Фиксированный размер | Список фиксированного размера. Элементы не могут быть добавлены/удалены. Существующие элементы могут быть изменены. | Ява 1.2 |
Поток.из(“data”).собрать(Collectors.toList()) | Изменяемый | Полезно при динамическом создании списков. | Ява 8+ |
1. Коллекции.singletonList()
Это самый простой и рекомендуемый метод создания неизменяемого списка с указанным элементом внутри. Список, созданный этим методом, неизменяем, поэтому вы можете быть уверены, что в нем не будет больше элементов ни при каких условиях.
List<String> list = Collections.singletonList( "data" );System.out.println(list); // Output: [data]
Например, мы можем использовать этот список следующим образом.
HttpHeaders headers = new HttpHeaders();headers.setAccept( Collections.singletonList( MediaType.APPLICATION_JSON ) );
2. Список.of() [Java 9+]
Аналогично мы можем использовать метод List.of(), добавленный в Java 9. Метод List.of() создает неизменяемый список с заданными элементами.
List<String> list = List.of( "data");System.out.println(list); // Output: [data]
3. Массивы.какСписок()
Метод Arrays.asList создает список фиксированного размера с заданными элементами. Список имеет фиксированный размер, поэтому мы не можем добавлять или удалять элементы; но мы можем изменять существующие.
List<String> list = Arrays.asList("data");System.out.println(list); // Output: [data]
4. API потоковой передачи
Мы также можем использовать Stream для сбора одного элемента в список. Собранный список является изменяемыми.
List<String> list = Stream.of("data").collect(Collectors.toList());System.out.println(list); // Output: [data]
Вот и все краткие советы по созданию списков в Java, содержащих один элемент.