3

那么如何在 Java 中执行以下操作?

List<String> strings = new ArrayList<String>();       
JAXBElement<List<String>> jax = new JAXBElement<List<String>>(new QName("strings"), List<String>.class, strings);

该问题特别发生在 List.class 中,返回的错误是:

Multiple markers at this line
- List cannot be resolved to a variable
- String cannot be resolved to a variable
- Syntax error on token ">", void expected after this token
4

1 回答 1

4

你不能。

最接近您想要的近似值是使用(Class<List<String>>) List.class.

这是因为没有List<String>.class,因为在运行时,List<String>List<Banana>List<FruitSalad>List在 Java 中都是一样的。这是出于各种原因而故意进行的,称为类型擦除。

于 2012-07-09T19:10:52.407 回答