Java:我可以将对象列表转换为String 列表,反之亦然?

这可能不经过列表并投射对象吗?

我还需要将List转换为List (T =预定义对象),如果可能的话?

编辑:为了澄清,我正在尝试使用List作为我的代码中广泛使用的类方法的返回类型。

不。这根本不是有效的转换,因为并非所有的Object都是String[]


您可以通过2行代码自行确定。


编辑

听起来你需要更一般地编写方法。 像这样的东西:

 public  List getGenericList() { return new ArrayList(); } 

这可以像这样返回List

 List listOfStringArr = getGenericList(); 

实际上,由于类型擦除,这是可能的。 您可以将参数化类型转换为原始类型,反之亦然。

  List listO = new ArrayList( ); listO.add( "Foo" ); listO.add( "Bar" ); List listQ = listO; List listS = (List) listQ; 

但是,这并不意味着这是一个好主意。 这适用于参数化类型的编译时类型检查。 如果列表包含您期望的类型以外的对象,则可能会出现意外结果。

根据定义,这是不可能的。 java中的所有类都扩展了Object。 物理列表理论上可以包含您想要的每种类型的元素。 你想怎么把东西转换成特定的T型?

不。如果第一个列表中的Object实际上不是 T怎么办?

话虽这么说,您可以尝试将ListList (为exception做好准备)。

/ E1
我不知道你的代码的具体细节,但听起来创建一个通用的方法对你有好处。