Примитивные представляет ценность и изменяемый объект представляют ссылку. null - это ключевое слово в java, и оно используется для обозначения отсутствия чего-либо или ссылки ничего. Если вы создаете объект как
Object obj=new Object(); or Integer i=new Integer();
Heap память присвоить некоторое пространство для справки переменного OBJ и я. , когда вы назначаете obj = null; или i = null; это означает, что obj и i не будут указывать на эту память или любую ее часть.
int[] arr=null;
Здесь arr является примитивной переменной, и ее значение равно null.
При попытке преобразовать массив в список по Arrays.asList (arr) ваш проходящий пустой массив, но ваш переход.
Поскольку
public static <T> List<T> asList(T... a) {
return new ArrayList<T>(a);
}
asList() метод отбора переменной длины массива и возвращать список.
Когда вы пишете
System.out.println(Arrays.asList (arr).contains(1)); //output as false
означает, что ваш фактически по сравнению с 1 из возвращенного списка и содержит (1) метод проверки ли 1 присутствует или нет в списке.
Но во втором заявлении System.out.println(Arrays.asList (null).contains(1));
ваше пропускание null. метод asList (нуль) пытаются
return new ArrayList<T>(a);
, что означает возвращение заявление, призывающее к
ArrayList(E[] array) {
if (array==null)
throw new NullPointerException();
a = array;
}
и во втором заявлении вы передаете нуль.
В случае Integer[] arr = null;
ваш фактически создает объект Integer класса-оболочки и переменной объекта представляют собой ссылки, здесь обр является объектом, и это имеет в виду null.And нуль означает ссылку на nothing.So, что причина, почему System.out.println(Arrays.asList (arr).contains(1));
бросить NPE
О нуль в Java вы можете по этой ссылке для получения более подробной информации: 9 Things about Null in Java
Первый список с одним элементом, нулевое значение, тип '' список. Второй пытается создать список ('List
Возможный дубликат [Varargs с нулевыми параметрами в Java] (http://stackoverflow.com/questions/12870021/varargs-with-null-parameters-in-java) –
ошибка заблокирована [здесь] (http: // bugs. java.com/bugdatabase/view_bug.do?bug_id=4189641) уже –