값 중 하나가 동일한 경우 배열 목록을 알파벳순으로 정렬하는 방법 (Java)

Candi00

나는 값을 가진 Arraylist가 있습니다 :
was-2
it-2
the-2
times-2
of-2
best-1
최악-1

이 목록은 문자열 끝에있는 개수 값으로 정렬되었지만 (선택 정렬 사용) 이제 알파벳순으로 개수가 같은 단어를 정렬하고 싶습니다. 어떻게해야할지 모르겠습니다.

따라서 예상되는 출력은

[it - 2, of - 2, the - 2, times - 2, was - 2, best - 1, worst - 1]
Arvind Kumar Avinash

에 문자열을 분할 \s+-\s+하는 하나 이상의 (즉, 문자 공백을 의미 \s+) 다음에 의해 -차례로 한 뒤에 이상의 공백 문자를.

숫자 (두 번째) 부분의 내림차순에 대해 첫 번째 비교 수준을 수행 한 다음 첫 번째 부분의 오름차순에 대해 두 번째 수준의 비교를 수행합니다.

import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;

public class Main {
    public static void main(String args[]) {
        List<String> list = new ArrayList<>(
                List.of("was - 2", "it - 2", "the - 2", "times - 2", "of - 2", "best - 1", "worst - 1"));

        list.sort(new Comparator<String>() {
            @Override
            public int compare(String s1, String s2) {
                String[] s1Parts = s1.split("\\s+-\\s+");
                String[] s2Parts = s2.split("\\s+-\\s+");
                int i = Integer.compare(Integer.parseInt(s2Parts[1]), Integer.parseInt(s1Parts[1]));
                if (i != 0) {
                    return i;
                }

                return s1Parts[0].compareTo(s2Parts[0]);
            }
        });

        System.out.println(list);
    }
}

산출:

[it - 2, of - 2, the - 2, times - 2, was - 2, best - 1, worst - 1]

참고 : 각 문자열의 두 부분이 항상로 구분되어 -있으면로 분할 할 수 있습니다 s1.split(" - ");.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

내림차순 값을 변경하지 않고 동일한 값을 가진 경우 목록에서 튜플을 알파벳순으로 정렬하는 방법은 무엇입니까?

분류에서Dev

R에서 중복없이 파일에 열을 쓰고 알파벳순으로 정렬하는 방법

분류에서Dev

PHP에서 알파벳순으로 값을 기준으로 다차원 배열을 정렬하는 방법

분류에서Dev

자동 증가 열 값을 알파벳순으로 구현하는 방법은 무엇입니까?

분류에서Dev

객체 배열을 알파벳순으로 정렬하고 빈 값을 끝으로 이동

분류에서Dev

배열을 알파벳순으로 정렬 한 다음 다른 배열에 순서를 지정하는 방법은 무엇입니까?

분류에서Dev

SQL ~ 값이 같을 때 알파벳순으로 정렬하는 방법

분류에서Dev

Java에서 동일한 방식으로 목록을 정렬하면 ID가 배열에 나타납니다.

분류에서Dev

특정 키의 값이 동일한 경우 값을 중첩 된 객체 배열로 업데이트하는 방법은 무엇입니까?

분류에서Dev

문자열 목록을 알파벳순으로 정렬하는 방법은 무엇입니까?

분류에서Dev

Excel : 동일한 열 값으로 행을 정렬하는 방법

분류에서Dev

Java-알파벳순 및 숫자 순으로 객체를 사용하여 배열 목록 정렬

분류에서Dev

Rails보기에서 알파벳순으로 목록을 정렬하는 방법

분류에서Dev

집합을 목록으로 변경하고 사전에서 알파벳순으로 정렬 된 값으로 키별로 정렬하는 방법은 무엇입니까?

분류에서Dev

하위 배열 유형 값으로 정렬 한 다음 알파벳순으로 정렬

분류에서Dev

알파벳순으로 파일을 RAR하는 방법

분류에서Dev

PHP에서 알파벳순으로 파일 경로를 포함하는 배열 정렬

분류에서Dev

조건과 일치하는 경우 배열의 값을 다른 배열의 동일한 위치에있는 값으로 바꾸는 가장 빠른 방법

분류에서Dev

Java : 대소 문자를 구분하지 않고 끝 부분에 숫자가있는 문자열을 알파벳순으로 정렬하는 방법

분류에서Dev

Java에서 동일한 키가 여러 번 나타나는 경우 한 값을 키로 매핑하고 다른 값을 목록으로 매핑

분류에서Dev

알파벳 범위의 값으로 배열을 그룹화하는 방법

분류에서Dev

두 사전 중 하나에서 항목을 검색하는 가장 우아한 방법이며 필요한 경우 기본값으로 설정됩니다.

분류에서Dev

std :: vector <strings>에서 중복을 찾고 결과 목록에서 중복없이 알파벳순으로 정렬 된 std :: list를 반환하는 방법

분류에서Dev

값 순서로 인쇄하거나 값이 동일한 경우 알파벳 순서로 인쇄

분류에서Dev

Bash : 이름에 문자열 목록 중 하나가 포함 된 경우 파일을 특정 폴더로 이동

분류에서Dev

gedit를 사용하여 텍스트 파일의 줄을 알파벳순으로 정렬하는 방법

분류에서Dev

gedit를 사용하여 텍스트 파일의 줄을 알파벳순으로 정렬하는 방법

분류에서Dev

동일한 키를 가진 하나 이상의 중첩 배열 값을 병합하는 방법

분류에서Dev

다차원 배열을 값별로 알파벳순으로 정렬하고 새 변수에 저장합니다.

Related 관련 기사

  1. 1

    내림차순 값을 변경하지 않고 동일한 값을 가진 경우 목록에서 튜플을 알파벳순으로 정렬하는 방법은 무엇입니까?

  2. 2

    R에서 중복없이 파일에 열을 쓰고 알파벳순으로 정렬하는 방법

  3. 3

    PHP에서 알파벳순으로 값을 기준으로 다차원 배열을 정렬하는 방법

  4. 4

    자동 증가 열 값을 알파벳순으로 구현하는 방법은 무엇입니까?

  5. 5

    객체 배열을 알파벳순으로 정렬하고 빈 값을 끝으로 이동

  6. 6

    배열을 알파벳순으로 정렬 한 다음 다른 배열에 순서를 지정하는 방법은 무엇입니까?

  7. 7

    SQL ~ 값이 같을 때 알파벳순으로 정렬하는 방법

  8. 8

    Java에서 동일한 방식으로 목록을 정렬하면 ID가 배열에 나타납니다.

  9. 9

    특정 키의 값이 동일한 경우 값을 중첩 된 객체 배열로 업데이트하는 방법은 무엇입니까?

  10. 10

    문자열 목록을 알파벳순으로 정렬하는 방법은 무엇입니까?

  11. 11

    Excel : 동일한 열 값으로 행을 정렬하는 방법

  12. 12

    Java-알파벳순 및 숫자 순으로 객체를 사용하여 배열 목록 정렬

  13. 13

    Rails보기에서 알파벳순으로 목록을 정렬하는 방법

  14. 14

    집합을 목록으로 변경하고 사전에서 알파벳순으로 정렬 된 값으로 키별로 정렬하는 방법은 무엇입니까?

  15. 15

    하위 배열 유형 값으로 정렬 한 다음 알파벳순으로 정렬

  16. 16

    알파벳순으로 파일을 RAR하는 방법

  17. 17

    PHP에서 알파벳순으로 파일 경로를 포함하는 배열 정렬

  18. 18

    조건과 일치하는 경우 배열의 값을 다른 배열의 동일한 위치에있는 값으로 바꾸는 가장 빠른 방법

  19. 19

    Java : 대소 문자를 구분하지 않고 끝 부분에 숫자가있는 문자열을 알파벳순으로 정렬하는 방법

  20. 20

    Java에서 동일한 키가 여러 번 나타나는 경우 한 값을 키로 매핑하고 다른 값을 목록으로 매핑

  21. 21

    알파벳 범위의 값으로 배열을 그룹화하는 방법

  22. 22

    두 사전 중 하나에서 항목을 검색하는 가장 우아한 방법이며 필요한 경우 기본값으로 설정됩니다.

  23. 23

    std :: vector <strings>에서 중복을 찾고 결과 목록에서 중복없이 알파벳순으로 정렬 된 std :: list를 반환하는 방법

  24. 24

    값 순서로 인쇄하거나 값이 동일한 경우 알파벳 순서로 인쇄

  25. 25

    Bash : 이름에 문자열 목록 중 하나가 포함 된 경우 파일을 특정 폴더로 이동

  26. 26

    gedit를 사용하여 텍스트 파일의 줄을 알파벳순으로 정렬하는 방법

  27. 27

    gedit를 사용하여 텍스트 파일의 줄을 알파벳순으로 정렬하는 방법

  28. 28

    동일한 키를 가진 하나 이상의 중첩 배열 값을 병합하는 방법

  29. 29

    다차원 배열을 값별로 알파벳순으로 정렬하고 새 변수에 저장합니다.

뜨겁다태그

보관