noneMatch ( 불일치하는 요소 )
import java.util.Arrays;
import java.util.List;
import java.util.function.Predicate;
import java.util.stream.Collectors;
public class Test {
public static void main(String[] args) {
List<String> str1List = Arrays.asList("ab", "bc", "cd", "ef", "fg");
List<String> str2List = Arrays.asList("cd", "ef", "fg", "gh", "hi");
List<String> filteredList = str1List.stream()
.filter(el -> str2List.stream().noneMatch(Predicate.isEqual(el)))
.collect(Collectors.toList());
System.out.println("noneMatch filteredList = " + filteredList);
}
}
str1List를 기준으로 str2List와 요소를 비교하여 불일치하는 요소를 찾기
(str2List를 기준으로 찾으려면 서로 자리만 바꾼 코드로 수정하면 됨)
anyMatch ( 일치하는 요소 )
import java.util.Arrays;
import java.util.List;
import java.util.function.Predicate;
import java.util.stream.Collectors;
public class Test {
public static void main(String[] args) {
List<String> str1List = Arrays.asList("ab", "bc", "cd", "ef", "fg");
List<String> str2List = Arrays.asList("cd", "ef", "fg", "gh", "hi");
List<String> filteredList = str1List.stream()
.filter(el -> str2List.stream().anyMatch(Predicate.isEqual(el)))
.collect(Collectors.toList());
System.out.println("anyMatch filteredList = " + filteredList);
}
}
서로 일치하는 요소 찾기
allMatch ( 모두 일치하는 요소 )
import java.util.Arrays;
import java.util.List;
import java.util.function.Predicate;
import java.util.stream.Collectors;
public class Test {
public static void main(String[] args) {
List<String> str1List = Arrays.asList("ab", "bc", "cd", "ef", "fg");
List<String> str2List = Arrays.asList("cd", "ef", "fg", "gh", "hi");
List<String> filteredList = str1List.stream()
.filter(el -> str2List.stream().allMatch(Predicate.isEqual(el)))
.collect(Collectors.toList());
System.out.println("allMatch filteredList = " + filteredList);
}
}
str1List를 기준으로 모두 일치하는 요소들을 찾기
'Develop > Java' 카테고리의 다른 글
Java 진수 변환 (0) | 2023.02.18 |
---|---|
Map 순회하기 (0) | 2023.02.10 |
ArrayList vs LinkedList (0) | 2023.02.09 |
BigDecimal (0) | 2023.01.25 |
중첩 삼항연산자 (0) | 2022.11.26 |