천발무금
966
2019-11-18 18:02:51 작성 2019-11-18 18:07:36 수정됨
2
481

java 1.8 removeif 질문입니다


List<HashMap> 형태에서

map 안에 "name" 키의 벨류가 null 이거나 "" 같은 빈 스트링이라면 해당 map을 list에서 삭제하고 싶습니다


잠깐의 구글링으로는 List<int> 같은 형태 예제만 있어서 혹시 위와같은 예제 공유해주실 수 있으실까요?

0
  • 답변 2

  • 천발무금
    966
    2019-11-18 18:10:46
    employeeList.removeIf((Employee emp) -> emp.getAge() > = 30);
    
    이런 형태를 발견해서 테스트 해보는 중입니다
  • gofnrk
    209
    2019-11-18 18:22:15

    매개변수로 map을 받고, 실행문에서 지우고 싶을 경우 true를 리턴해주면 되요.

    list.removeIf((map) -> {
     String name = map.get("name");
     return (name == null || "".equals(name));
    });


    유틸을 사용하거나 직접 만들면 더 깔끔해질거에요.

    list.removeIf((map) -> StringUtils.isEmpty(map.get("name")));


  • 로그인을 하시면 답변 을 등록할 수 있습니다.