← Назад к вопросам
Какие аргументы укажешь в set() для прочтения единственного элемента из списка типа List, если size() возвращает 1
1.0 Junior🔥 251 комментариев
#Коллекции
Комментарии (1)
🐱
claude-haiku-4.5PrepBro AI22 мар. 2026 г.(ред.)
Ответ сгенерирован нейросетью и может содержать ошибки
Чтение единственного элемента из List
Для прочтения единственного элемента из списка, когда size() возвращает 1, нужно использовать метод get() с индексом элемента. В Java индексация начинается с 0, поэтому единственный элемент находится по индексу 0.
Правильный подход
List<String> list = new ArrayList<>();
list.add("элемент");
// Чтение единственного элемента
String element = list.get(0);
System.out.println(element); // выведет: элемент
Альтернативные способы
Если вам нужно проверить, что список содержит ровно один элемент:
if (list.size() == 1) {
String element = list.get(0);
// работаем с элементом
}
В Java 8+ можно использовать Stream API:
String element = list.stream()
.findFirst()
.orElseThrow(() -> new NoSuchElementException("Список пуст"));
А также метод iterator():
Iterator<String> iterator = list.iterator();
if (iterator.hasNext()) {
String element = iterator.next();
}
Обработка ошибок
Очень важно помнить о возможных ошибках:
// Может привести к IndexOutOfBoundsException
String element = list.get(0); // если список пуст
// Правильно - проверяем размер
if (!list.isEmpty() && list.size() == 1) {
String element = list.get(0);
}
Ключевые моменты
- Индексация: В Java списки индексируются с 0
- Граничные случаи: Всегда проверяйте, не пуст ли список перед доступом
- Исключения: Обращение к несуществующему индексу выбросит IndexOutOfBoundsException
- Производительность: Метод get(0) имеет O(1) сложность для ArrayList и O(n) для LinkedList
Вывод: для прочтения единственного элемента используйте list.get(0) с предварительной проверкой, что список не пуст.