java的List<Object>如何转List<String>
时间: 2023-10-14 07:31:21 浏览: 105
可以使用Java 8的Stream API和map()方法将List<Object>转换为List<String>,具体代码如下:
```java
List<Object> objectList = new ArrayList<>();
// 添加元素到objectList中
List<String> stringList = objectList.stream()
.map(Object::toString)
.collect(Collectors.toList());
```
上述代码中,首先创建了一个List<Object>对象objectList,并向其中添加了元素。接下来,通过使用Stream API,将objectList中的每个元素都转换为String类型,最后使用collect()方法将结果收集到List<String>对象stringList中。
另外,如果List<Object>中的元素不是全部都能转换为String类型,可以使用lambda表达式代替Object::toString,自定义转换规则。例如:
```java
List<Object> objectList = new ArrayList<>();
// 添加元素到objectList中
List<String> stringList = objectList.stream()
.map(obj -> {
if (obj instanceof Integer) {
return String.valueOf(obj);
} else {
return null;
}
})
.filter(Objects::nonNull)
.collect(Collectors.toList());
```
上述代码中,如果List<Object>中的元素是Integer类型,则调用String.valueOf()方法将其转换为String类型。如果元素不是Integer类型,则返回null。最后,使用filter()方法过滤掉null元素,最终得到List<String>对象stringList。
阅读全文