728x90
반응형
람다식
람다식이 매번 헷갈려서 정리 해보려고 한다.
더미 데이터 준비
private List<Demon_Test_VO> createData() {
List<Demon_Test_VO> list = new ArrayList<Demon_Test_VO>();
Demon_Test_VO v1 = new Demon_Test_VO();
Demon_Test_VO v2 = new Demon_Test_VO();
Demon_Test_VO v3 = new Demon_Test_VO();
Demon_Test_VO v4 = new Demon_Test_VO();
Demon_Test_VO v5 = new Demon_Test_VO();
Demon_Test_VO v6 = new Demon_Test_VO();
Demon_Test_VO v7 = new Demon_Test_VO();
v1.setI_title("수빈");
v1.setI_content("수영");
v2.setI_title("보은");
v2.setI_content("골프");
v3.setI_title("은지");
v3.setI_content("헬스");
v4.setI_title("아영");
v4.setI_content("사격");
v5.setI_title("다미");
v5.setI_content("필라테스");
v6.setI_title("유빈");
v6.setI_content("달리기");
v7.setI_title("나나");
v7.setI_content("요가");
list.add(v1);
list.add(v2);
list.add(v3);
list.add(v4);
list.add(v5);
list.add(v6);
list.add(v7);
return list;
}
람다식 사용
public static void main(String[] args) {
람다식 LAM = new 람다식();
List<Demon_Test_VO> list = LAM.createData();
System.out.println("================{ 람다식 사용 전 }====================");
for( Demon_Test_VO vo : list ) {
System.out.println(vo.getI_title());
System.out.println(vo.getI_content());
}
list = list.stream().filter( x -> x.getI_title().equals("은지")).collect(Collectors.toList());
System.out.println("================{ 람다식 사용 후 }====================");
for( Demon_Test_VO vo : list ) {
System.out.println(vo.getI_title());
System.out.println(vo.getI_content());
}
}
list = list.stream().filter(x -> x.getI_title().equals("은지"))
.collect(Collectors.toList());
List<Demon_Test_VO> list 에서
list 에 존재하는 Demon_Test_VO 들 중에
하나의 Demon_Test_VO씩 꺼내오는데
꺼내온 Demon_Test_VO가 x에 대입이 된다.
x에서 getI_title() 을 이용해서 I_title 을 꺼내온다.
후에 확인을 하는데 x.getI_title().equals("은지") 조건이 참인 데이터만이 살아 남게 된다.
후에 list 에 다시 삽입하는데 이 또한 형식을
List 형식으로 변환 후에 저장해야하기 때문에
.collect(Collectors.toList());
를 이용하여 반환하여 주자.
728x90
반응형
'개발중 > Java' 카테고리의 다른 글
java Excel 파일 읽어오기 (0) | 2021.03.08 |
---|---|
람다식 parallelStream, forEach (0) | 2021.02.25 |
JAVA Excel Create 내보내기 (기초) (0) | 2021.02.25 |
java 8 stream api documentation (0) | 2021.02.25 |
java 8 stream api documentation (2) | 2021.02.24 |