案例2代码实现;
ArrayList<String> LIST=new ArrayList<>();
Collections.addAll(LIST,"张三,25","李四,24","朝气,26");
Map<String, Integer> collect = LIST.stream().filter(s -> Integer.parseInt(s.split(",")[1]) >= 25)
.collect(Collectors.toMap(new Function<String, String>() {
@Override
public String apply(String s) {
return s.split(",")[0];
}
}, new Function<String, Integer>() {
@Override
public Integer apply(String s) {
return Integer.parseInt(s.split(",")[1]);
}
}));
System.out.println(collect);
![]()
案例3代码实现:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Objects;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class stream案例3 {
public static void main(String[] args) {
ArrayList<String> list1=new ArrayList<>();
ArrayList<String> list2=new ArrayList<>();
Collections.addAll(list1,"张三,23","李四,24","王五,26");
Collections.addAll(list1,"杨六,24","杨七,45","zz,26");
Stream<String> stream1 = list1.stream().filter(s -> s.split(",")[0].length() == 2)
.limit(2);
Stream<String> stream2 = list2.stream().filter(s -> s.split(",")[0]
.startsWith("杨")).skip(1);
Stream.concat(stream1,stream2).map(new Function<String, actor>() {
@Override
public actor apply(String s) {
String name = s.split(",")[0];
int age= Integer.parseInt(s.split(",")[1]);
return new actor(name,age);
}
}).forEach(s-> System.out.println(s));
}
}
class actor{
private String name;
private int age;
public actor(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
actor actor = (actor) o;
return age == actor.age &&
Objects.equals(name, actor.name);
}
@Override
public int hashCode() {
return Objects.hash(name, age);
}
@Override
public String toString() {
return "actor{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}