我有以下代码行:
List<String> variandIds=(List<String>)parameters.get(AnalysisConstants.VARIANT_LOOKUPS_ID_LIST);
它会触发以下警告:Unchecked cast 'java.lang.Object' to 'java.util.List<java.lang.String>'
parameters
这是一张地图。
我需要摆脱警告,所以我想找出一种检查列表值的方法
现在我可以使用@SuppressWarnings("unchecked")
但我不想要解决问题而不是忽略它。
答案 0 :(得分:1)
参数变量声明不使用泛型或声明为Object类型的键。
如果参数变量是您可以控制的,则应更改声明以使用泛型。
如果它不在你的控制之下,除了抑制警告之外你什么也做不了。
编辑:
private List<VariantLookup> updateSelectedVariants(Map parameters)
应该是
private List<VariantLookup> updateSelectedVariants(Map<KEY_TYPE,List<String>> parameters)