속성 값을 기반으로 ArrayList에서 객체 검색
현재 작업은 Carnet 인스턴스와 같은 특정 객체를 찾는 것입니다. ArrayList
Java 8 스트림 접근 방식
Java 8에서는 데이터 컬렉션 작업을 위한 간결하고 효율적인 방법을 제공하는 스트림을 도입합니다. 원하는 개체를 찾으려면:
public static Carnet findByCodeIsIn(Collection<Carnet> listCarnet, String codeIsIn) { return listCarnet.stream().filter(carnet -> codeIsIn.equals(carnet.getCodeIsin())).findFirst().orElse(null); }
이 메서드는 stream()을 활용하여 목록을 탐색하고 filter()를 활용하여 codeIsin 값이 일치하는 개체만 선택합니다. findFirst()는 일치하는 첫 번째 요소를 검색하고 orElse()는 일치하는 항목이 없으면 null을 반환합니다.
일반 유틸리티 클래스 접근 방식
여러 객체 유형( Carnet뿐만 아니라) 여러 검색 속성(codeIsin뿐만 아니라)이 관련되어 있는 경우 검색을 캡슐화하기 위한 유틸리티 클래스 생성을 고려하세요. 논리:
public final class FindUtils { public static <T> T findByProperty(Collection<T> col, Predicate<T> filter) { return col.stream().filter(filter).findFirst().orElse(null); } } public final class CarnetUtils { public static Carnet findByCodeTitre(Collection<Carnet> listCarnet, String codeTitre) { return FindUtils.findByProperty(listCarnet, carnet -> codeTitre.equals(carnet.getCodeTitre())); } // Additional methods for other search criteria }
이 접근 방식은 검색 논리를 중앙 집중화하고 다양한 개체 유형 및 검색 속성에서 쉽게 재사용할 수 있도록 해줍니다.
위 내용은 codeIsin 속성을 사용하여 ArrayList에서 Carnet 개체를 효율적으로 찾는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!