原始堆栈与通用堆栈<character> </character>

时间:2013-10-07 05:27:35

标签: java char stack character generic-collections

这不是错误,我只是不喜欢在Eclipse中显示警告。

Stack is a raw type. References to generic type Stack<E> should be parameterized

我知道我可以通过提供类字符E来修复它,但由于我将使用.charAt,我宁愿简单地使用<char>,因为那是类型charAt回报。有没有办法让我使用char作为参数,如果没有,我会使用<Character>遇到投射问题吗?

2 个答案:

答案 0 :(得分:1)

您必须使用Character而不是char的原因是Java中的泛型类型参数不能是原始类型。没有办法解决这个问题。如果你想使用标准的Java集合框架,你只需要忍受这个。

就警告而言:

  • 它们是警告,可以被抑制。您可以在源代码中(通过使用@SuppressWarning注释)或通过更改Eclipse Java编译器首选项来执行此操作。

  • 始终可以写出与原始类型的任何用法相对应的通用等效项。

答案 1 :(得分:0)

您无法使用原始类型实例化通用类型。有关详细信息,请参阅here

您可以使用Character课程。要获取原始数据类型,您始终可以在Character类中使用charValue()方法。