Java,摆脱了返回对象的方法的未经检查的转换

问题描述

我还有另一种未经检查的警告,那就是我无法摆脱。代码如下:

public <FV,V> V getFieldValue ( String fieldName,Function<FV,V> converter )
{
  FV fieldValue = (FV) getFieldValue ( fieldName ); // this returns an object
  return converter.apply ( fieldValue )
} 

该代码可以编译并且可以正常工作,但是Eclipse(和Java编译器)抱怨FV强制转换不安全。是的,是的,但是我想依靠呼叫者知道他们在做什么,所以我想删除警告。

Eclipse建议我在赋值或方法级别添加@SuppressWarnings ( "unchecked" ),但都不要改变。可以告诉编译器我很好并且我不想被打扰吗?

如果您认为getFieldValue()应该使用通用而不是对象,是的,我知道,但是这是非常古老的代码,我无法更改。

解决方法

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

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

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