Java中从映射中删除类对象键

Java中从映射中删除类对象键,java,object,collections,Java,Object,Collections,我有一个由字符串和class objectBlock组成的键/值对映射。remove(对象键,对象值)方法无法实际删除指定的对象 private static Map stockInfo=new LinkedHashMap() 我的IDE提示我,我在对象值数据字段中的条目“可能不包含'Block'类型的值”。关于Java和在方法中传递值,我缺少什么基本概念?我只用Java编写代码的时间很短 stockInfo.remove(symbolCode,(stockInfo.get(symbolCode

我有一个由字符串和class object
Block
组成的键/值对映射。
remove(对象键,对象值)
方法无法实际删除指定的对象

private static Map stockInfo=new LinkedHashMap()

我的IDE提示我,我在
对象值
数据字段中的条目“可能不包含'Block'类型的值”。关于Java和在方法中传递值,我缺少什么基本概念?我只用Java编写代码的时间很短

stockInfo.remove(symbolCode,(stockInfo.get(symbolCode)).get(0))

我有一个由字符串和类对象块组成的键/值对映射

不,你没有

您声明了
String
Block
类型的对象集合的映射。特别是
ArrayList
集合

因此,编译器拒绝您删除字符串以阻止条目的尝试,因为不存在此类条目。在
映射中,您只有一个字符串来列出块条目

Map stockInfo=newlinkedhashmap()

字符串到块的映射如下所示:

Map< String, Block > 
Map

你是对的,但是我的
remove()
方法试图删除
Map
不是吗?或者你是说我试图修改Map值的一部分本质上是不可能的?@Mithrandir问题是单个
Block
对象与
Block
对象的列表。