在Hashtable get()操作中检查null

a L*_*ner 2 java collections

根据类的java文档Hashtable:

This example creates a hashtable of numbers. It uses the names of the numbers as keys:

   Hashtable<String, Integer> numbers
     = new Hashtable<String, Integer>();
   numbers.put("one", 1);
   numbers.put("two", 2);
   numbers.put("three", 3);

To retrieve a number, use the following code:

   Integer n = numbers.get("two");
   if (n != null) {
     System.out.println("two = " + n);
   }
Run Code Online (Sandbox Code Playgroud)

if (n != null) {当Hashtable不允许键和值中的空值时,为什么它在上面的代码中使用 get()操作?

如果它是为HashMap编写的那么它可以,因为HashMap允许键和值中的空值,但为什么它将它用于Hashtable?

Kep*_*pil 5

这是一个很好的做法,因为如果Hashtable中不存在指定的键,则该get()方法返回null.
在上面的代码示例中,我们可以忽略这一点,因为我们知道,"two"关键是存在的,但往往不是在现实生活中的应用情况.