>  기사  >  Java  >  Java에서 Comparable 인터페이스를 사용하여 LinkedHashMap을 값별로 정렬

Java에서 Comparable 인터페이스를 사용하여 LinkedHashMap을 값별로 정렬

WBOY
WBOY앞으로
2023-08-26 09:53:061607검색

Java에서 Comparable 인터페이스를 사용하여 LinkedHashMap을 값별로 정렬

LinkedHashMap은 Map 인터페이스를 구현하는 데 사용되는 일반 클래스입니다. 또한 HashMap 클래스의 하위 클래스이므로 HashMap 클래스의 모든 메서드를 사용하고 유사한 작업을 수행할 수 있습니다.

Java는 LinkedHashMap을 정렬하는 여러 가지 방법을 제공합니다. 이 기사를 통해 Comparable 인터페이스를 사용하여 생성하고 값을 기준으로 정렬하는 방법을 알아봅니다.

LinkedHashMap을 값별로 정렬하는 프로그램

정렬 과정을 바로 시작하기 전에 몇 가지 개념을 살펴보겠습니다. -

LinkedHashMap

앞서 논의한 것처럼 LinkedHashMap 클래스는 HashMap 클래스를 확장하여 Map 인터페이스를 구현합니다. 키-값 쌍을 유지합니다. 키는 이와 관련된 값을 가져오고 받는 데 사용되는 개체입니다. LinkedList에 매핑된 요소를 삽입 순서대로 저장합니다. 즉, 요소의 삽입 순서를 유지합니다. 게다가 해당 요소를 반환할 때마다 삽입 순서대로 인쇄됩니다.

LinkedHashMap의 일반적인 구문은 다음과 같습니다. -

문법

으아아아

위 구문에서

TypeOfKey - 키의 데이터 유형을 지정합니다.

TypeOfValue - 맵에 저장될 값의 데이터 유형을 지정합니다.

nameOfMap − 지도에 적절한 이름을 지정하세요.

유사한 인터페이스

Java는 배열, 목록 또는 컬렉션을 정렬하는 데 도움이 되는 다양한 정렬 알고리즘과 방법을 제공합니다. Comparable 인터페이스는 사용자 정의 개체를 자연스러운 순서로 정렬하려는 경우 매우 유용한 추가 방법입니다. 예를 들어 문자열은 사전식으로 정렬하고 숫자는 숫자로 정렬합니다. 이 인터페이스는 "java.lang" 패키지에서 사용할 수 있습니다.

문법

으아아아

compareTo() 메소드

Comparable 인터페이스는 객체 컬렉션을 정렬하기 위해 재정의할 수 있는 "CompareTo"라는 메서드만 정의합니다. 클래스의 객체를 자신과 비교할 수 있는 기능을 제공합니다. "this" 객체가 전달된 객체와 같으면 0을 반환하고, "this" 객체가 더 크면 양수 값을, 그렇지 않으면 음수 값을 반환합니다.

문법

으아아아

Collections.sort() 메서드

컬렉션 인터페이스의 "Collections" 클래스는 지정된 컬렉션(예: ArrayList 또는 LinkedList)의 요소를 정렬할 수 있는 "Collections.sort()"라는 정적 메서드를 제공합니다. "java.util" 패키지에서 사용할 수 있습니다.

문법

으아아아

알고리즘

  • 1단계 - Comparable 인터페이스를 구현하는 'Cart' 클래스를 만듭니다. 클래스 내에서 두 개의 변수를 선언하고 각각 string 유형과 배정밀도 float 유형의 두 매개변수 'item'과 'price'를 사용하는 생성자를 정의합니다.

  • 2단계 - 그런 다음 “toString()” 메서드를 사용하여 객체의 데이터를 문자열로 변환합니다. 그런 다음 "Cart" 클래스의 개체를 매개 변수로 사용하여 "compareTo" 메서드를 정의하여 "this" 개체를 새로 생성된 개체와 비교합니다.

  • 3단계 - 이제 main() 메소드에서 'obj'라는 LinkedHashMap 클래스의 'Cart' 객체를 선언하고 여기에 저장된 'put()'이라는 내장 메소드를 사용하여 객체의 세부정보를 입력합니다. 'item'이 키이고 해당 값은 'price'입니다.

  • 4단계 - 마지막으로 "SrtList"라는 ArrayList 컬렉션을 정의하여 LinkedHashMap의 정렬된 요소를 저장합니다. 이제 "Collections.sort()" 메소드에 "obj"를 매개변수로 전달하여 값별로 정렬 작업을 수행합니다.

으아아아

출력

으아아아

결론

Java 1.0 버전에서는 유사한 인터페이스가 처음으로 도입되어 "java.lang" 패키지에 제공되었습니다. 이 기사에서는 정렬 작업에서 LinkedHashMap 및 Comparable 인터페이스의 사용을 살펴보았습니다.

위 내용은 Java에서 Comparable 인터페이스를 사용하여 LinkedHashMap을 값별로 정렬의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제