有很多关于类似主题的 QA 帖子,例如:
Java: Converting lists of one element type to a list of another type
How to transform List to another List
但是,他们都使用了一些额外的库,这对我来说是不合适的。我想找到仅使用 Java 7(及以下)库的最佳解决方案。
假设我们已经:
List list = new LinkedList();
list.add(2);
list.add("Mike");
list.add("John");
list.add(11);
transformer(list); // transform List to List<String>
list.get(0).toLowerCase();
如何实现void transform(List list)
方法?
最佳答案
您可以查看列表的内容并调用 String.valueOf(Object)
每一个:
List<String> result = new LinkedList<>();
for (Object o : list) {
result.add(String.valueOf(o));
}
编辑:
这也可以通过 ListIterator
内联完成。 ,如果您愿意:
ListIterator iter = list.listIterator();
while (iter.hasNext()) {
iter.set(String.valueOf(iter.next()));
}
关于java - 如何仅使用 Java 7(及以下版本)将原始数据类型列表转换为 List<String>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41651419/