컬렉션이 아니라 위에 말씀하신 3가지를 가진 구조체가 있고
이 구조체 인스턴스를 리스트로 가지고 있을 경우에 검색하시는 법을 말씀하시는거같은데
저 같은 경우는 이 컬렉션이 ArrayList라고 하였을때 ArrayList의 contains 함수가 있습니다.
만약 ArrayList<String> 인 경우 contains함수를 사용하여 값을 찾을 수가 있지요.
그런데 질문자님이 원하시는 방법은 2개 이상의 조건인 경우인데 이것도 contains함수로 가능합니다.
Object를 상속받는 모든 클래스는 equals 라는 함수를 가지고 있습니다. 리턴값이 boolean 이구요.
말씀하신 3가지 데이터를 갖는 구조체에서 equals 함수를 오버라이드 하여 그 안에 원하시는 조건에 맞기 true 또는 false 를 리턴하도록 정의하시고 contains 함수를 사용하시면 원하시는 결과를 얻으실 수 있습니다.