#java #list
#java #Список
Вопрос:
List<String> a = new ArrayList<String>();
List<String> b = new ArrayList<String>();
a.add("apple");
a.add("orange");
System.out.println(a.containsAll(b));
Приведенная выше программа выводит значение True. Не понимаю, почему он выводит True?
Ответ №1:
Потому что B
пуст. A
содержит все в B
.
Ответ №2:
Потому что b
пуст. Следовательно, в нет ничего, b
чего бы не было в a
.
Ответ №3:
Это вопрос логики: содержит ли A все элементы внутри B?
Это можно рассматривать как для каждого элемента в B, принадлежит ли этот элемент также A?
Вы можете понять, что условие истинно, поскольку B пустое, нет элемента для проверки: для каждого элемента в B, поэтому ни для одного элемента.
Ответ №4:
Список.containsAll вернет значение true, если список содержит все элементы в пределах целевого объекта. Поскольку B пуст, A содержит все те же элементы, что и B.
Ответ №5:
Очевидно, что имелась в виду опечатка. b.add(«оранжевый»).
Комментарии:
1. Просто дикое предположение. Определенно не причина.