C 쌍에 해당하는 Java
질문:
Java이지만 1.6에는 Map.Entry가 있지만 C와 직접적으로 동등한 것은 없습니다. 쌍
답변:
결석 이유:
Hunter Gratzner는 comp.lang.java.help 스레드에서 쌍 구조 도입에 반대하는 주장을 제시합니다. 자바. 주요 관심사는 쌍 클래스에 두 값 사이의 관계에 대한 명시적 의미가 부족하다는 것입니다. 구체적인 이름을 지정하지 않으면 "첫 번째" 및 "두 번째" 값이 무엇을 나타내는지 불분명하므로 코드의 의도를 이해하기가 더 어렵습니다.
적절한 대안:
권장 접근 방식은 각 의도된 사용 사례에 대해 간단하고 구체적인 클래스를 만드는 것입니다. 예를 들어, pair(x,y) 대신 Position(x,y)와 같이 더 설명적인 클래스가 두 값 간의 관계를 더 명확하게 전달합니다. 마찬가지로 Range(begin,end) 및 Entry(key,value).
Map.Entry는 제한된 동등 항목으로 사용됩니다.
Map.Entry는 쌍을 제공합니다. -기능과 유사하며 키-값 매핑에만 해당되므로 범용이 제한됩니다.
결론:
Java는 일반적인 쌍 클래스에 의존하는 대신 의도된 용도를 명시적으로 전달하는 전문적이고 의미 있는 클래스의 생성을 권장합니다. 이 접근 방식은 코드 가독성과 이해도를 높이는 동시에 일반 쌍 유형과 관련된 의미적 모호성을 방지합니다.
위 내용은 C의 `Pair`에 해당하는 Java는 무엇이며 왜 직접적인 아날로그가 없습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!