即使hashmap getkey不遵循定义的泛型,也不会引发异常

问题描述

我尝试使用哈希图。我定义了哈希图,将键作为整数,将值作为字符串。

package hello;

import java.util.HashMap;

public class Recursion {
    

    public static void main(String[] args) {
        HashMap<Integer,String> hash1 = new HashMap<Integer,String>();
        hash1.get(5);                  // return null
        hash1.get("hello");            // return null
     
    }
}

在上面的代码中,hash1.get(5)返回预期的null。 但是hash1.get(“ hello”)也会返回null,即使我尝试获取字符串,也不会给出任何异常。 任何原因的想法吗? 我试图查看 get 函数的实现。我在那里没有看到任何类型检查。 因此,即使我在通用类型中定义了类型,我也可以假设没有类型检查。

有人可以详细解释一下,为什么不给出任何编译时错误

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)