老师帮忙看一下,为什么移除key值会报错呀
来源:4-2 Map实现类—HashMap与LinkedHashMap的区别
王大力牛批
2022-10-25 01:13:11
public class HashMapSample { public static void main(String[] args) { HashMap<String,Object> student=new HashMap<>();//创建对象<key,value> student.put("name","王大力");//put()添加方法 String name=(String) student.put("name","张达"); System.out.println(name+"已被替换为张达"); student.put("age","24"); student.put("weigth","75"); student.put("heigth","175"); System.out.println(student); String n=(String) student.get("name");//get()获取指定key值 System.out.println(n); Boolean k=student.containsKey("name");//containsKey判断key是否存在 返回值是布尔类型 Boolean v=student.containsValue("name");//containsValue判断Value是否存在 返回值是布尔类型 Boolean k1=student.containsKey("nam");//查询是否有这个key 返回值是布尔类型 System.out.println(k); System.out.println(k1); Integer r= (Integer)student.remove("weigth");//remove 移除key值 System.out.println("已经移除"+r); } }
1回答
好帮手慕小脸
2022-10-25
同学你好,根据上述异常信息得知:是因为类型转换错误,不能将String类型转化成Integer类型,这里同学可直接返回Object类型,或修改泛型为String,参考代码如下:
祝学习愉快~
相似问题
回答 1
回答 1