Java在没有警告的情况下使用特定类型强制转换泛型类

Java在没有警告的情况下使用特定类型强制转换泛型类,java,android,generics,casting,Java,Android,Generics,Casting,我有一个类列表片段 public class ListFragment<T> extends DialogFragment { 它给了我一个警告类型安全:未选中从片段到ListFragment的强制转换 要删除警告,我必须添加@SuppressWarnings(“未选中”) 我之所以需要ListFragment,是因为我将调用一个依赖于String使用的方法 因此,有没有一种方法可以在不使用抑制警告的情况下实现这一点。请注意,此代码是为在Android上使用而编写的。总之,不是。

我有一个类列表片段

 public class ListFragment<T> extends DialogFragment {
它给了我一个警告类型安全:未选中从片段到ListFragment的强制转换

要删除警告,我必须添加
@SuppressWarnings(“未选中”)

我之所以需要
ListFragment
,是因为我将调用一个依赖于
String
使用的方法


因此,有没有一种方法可以在不使用抑制警告的情况下实现这一点。请注意,此代码是为在Android上使用而编写的。

总之,不是。
findFragmentByTag
方法不知道它将返回一个
ListFragment
,而超类
Fragment
本身没有类型参数


您所能做的最好的事情就是按您所做的那样抑制警告。

它只是一个警告。运行它,测试它,如果一切顺利。别管了。您可以抑制应用程序中的每个警告。祝你好运

没错,尽管我很欣赏这个问题对零警告的追求。我不知道为什么我会得到一个负号。最后,如果您的单元测试通过了,功能测试和用户测试通过了,那么为什么还要担心这些警告呢?谢谢,我是Java新手,所以当我看到这些警告时,我想一定有比我现在做的更好的方法来处理。
ListFragment<String> lfst = (ListFragment<String>)getFragmentManager().findFragmentByTag("somePicker");