Здесь у меня есть образец кода для Hash Table и Concurrent Hash Map, который не позволяет использовать нулевой ключ как объект, но оба синхронизированы.Почему синхронизированный объект дает нулевой указатель Исключение, если мы добавляем нулевой ключ в качестве объекта.?
public class Example
{
public static void main(String[] args)
{
ConcurrentHashMap<String,String> premiumPhone =
new ConcurrentHashMap<String,String>();
premiumPhone.put("Apple", "iPhone");
premiumPhone.put("HTC", "HTC one");
premiumPhone.put(null,"S5");
Iterator iterator = premiumPhone.keySet().iterator();
while (iterator.hasNext())
{
System.out.println(premiumPhone.get(iterator.next()));
premiumPhone.put("Sony", "Xperia Z");
}
}
}
почему сериализованная объект дает исключения нулевого указателя. – Santosh
@Santosh вы сериализуете объект, вы передаете ссылку в качестве ключа. –
@Santosh Я не понимаю, что вы имеете в виду. Вы не сериализуете Object, вы пытаетесь поместить нулевой ключ в ConcurrentHashMap, что невозможно, как указано в связанном Javadoc I. –