给出以下Java代码:
Hashtable<String,Integer> hs = new Hashtable<String,Integer>();
if(hs==null){
System.out.println("this table is blank");
}
创建一个没有对的新Hashtable。为什么控制台没有输出?那么,如何检查Hashtable是否为空?
答案 0 :(得分:2)
当Hashtable
为空时,null
不是if (hs.isEmpty()){
;对象本身仍然存在。改为使用isEmpty()
方法。
{{1}}
答案 1 :(得分:0)
因为它不是空的
Hashtable<String,Integer> hs = new Hashtable<String,Integer>();
if(hs==null){ //true if hashtable equals to null (which is not
System.out.println("this table is blank");
}
如果您想检查它是否为空,请使用hs.isEmpty()
答案 2 :(得分:0)
因为您在检查之前创建了新的哈希表。你可能需要这样做
if(hs.isEmpty()){
System.out.println("this table is blank");
}