JAVA/java
[java] JAVA Stream 요소삭제 (remove)
닉의네임
2023. 6. 8. 21:56
반응형
신발 사러 왔는데 가방은 쫌 그래요.. 말도 꺼내지마요..
상품중에 가방을 지워보자
package com.bbongdoo.doo.Streams;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@AllArgsConstructor
public class Goods {
private String name;
private String type;
}
Goods 객체로 일루어진 List 를 만들어 보자
List<Goods> goods = new ArrayList<>();
goods.add(new Goods("나이키", "신발"));
goods.add(new Goods("아디다스", "신발"));
goods.add(new Goods("리복", "가방"));
goods stream 에서 가방만 추출 (filter) 후 리스트 반환 (collect) 리스트 순회하며 goods 에서 삭제 (remove)
package com.bbongdoo.doo.Streams;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
public class StreamRemove {
public static void main(String[] args) {
List<Goods> goods = new ArrayList<>();
goods.add(new Goods("나이키", "신발"));
goods.add(new Goods("아디다스", "신발"));
goods.add(new Goods("리복", "가방"));
goods.stream().filter(x -> x.getType().equals("가방")).collect(Collectors.toList()).forEach(x ->
{
goods.remove(x);
});
goods.stream().forEach(
x -> {
System.out.println(x.getName());
}
);
}
}
반응형