stream 流将一个LIST<object>转化成List<String>
时间: 2023-07-16 16:16:24 浏览: 104
你可以使用Java 8的Stream API将List<Object>转换为List<String>,示例代码如下:
```
List<Object> objects = Arrays.asList("hello", 123, true);
List<String> strings = objects.stream()
.map(Object::toString)
.collect(Collectors.toList());
System.out.println(strings); // ["hello", "123", "true"]
```
这里使用了Stream的map方法将每个对象转换为它的字符串表示形式,并使用collect方法将结果收集到一个List<String>中。
相关问题
stream list<object> 遍历 List<String>去重
可以使用LINQ库中的Distinct()方法来去重,示例代码如下:
```csharp
List<object> stream = new List<object>();
List<string> stringList = new List<string>();
// 假设stream已经被初始化并填充
// 假设stringList已经被初始化并填充
var distinctStringList = stringList.Distinct();
foreach (object obj in stream)
{
foreach (string str in distinctStringList)
{
// 在这里处理obj和str
}
}
```
在上面的代码中,我们首先使用Distinct()方法来去重stringList中的元素,并将结果存储在distinctStringList变量中。然后,我们使用两个嵌套的foreach循环来遍历stream和distinctStringList,并在内部处理它们。
java 将List<Object>分组为Map<String,List<String>> 使用stream
在Java中,可以使用Stream API将`List<Object>`分组为`Map<String, List<String>>`。下面是一个示例代码:
```java
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
List<Object> objects = List.of(
new Object("A", "Apple"),
new Object("B", "Banana"),
new Object("A", "Avocado"),
new Object("C", "Cherry"),
new Object("B", "Blueberry")
);
Map<String, List<String>> groupedMap = objects.stream()
.collect(Collectors.groupingBy(Object::getKey,
Collectors.mapping(Object::getValue, Collectors.toList())));
System.out.println(groupedMap);
}
static class Object {
private String key;
private String value;
public Object(String key, String value) {
this.key = key;
this.value = value;
}
public String getKey() {
return key;
}
public String getValue() {
return value;
}
}
}
```
在上面的代码中,我们首先创建了一个`List<Object>`对象,其中每个对象都有一个键和一个值。然后,我们使用Stream的`groupingBy`方法将对象按照键进行分组,并使用`mapping`方法将值映射为列表。最后,我们将结果收集到一个`Map<String, List<String>>`中。
阅读全文