Android-특정 그룹의 ArrayList 항목을 값으로 회전하려면 어떻게해야합니까?

AndiFaria

Android에서 ArrayList를 회전해야합니다. 내가 찾은 모든 솔루션이 필요한 방식으로 작동하지 않았습니다.

ArrayList를 주어진 위치로 어떻게 회전시킬 수 있습니까? 이미 정렬되어 있으므로 오름차순 또는 내림차순으로 정렬 할 필요가 없습니다. 나는 이것을 시도하고있다 :

ArrayList<String> myArray = new ArrayList;

myArray.add("A");
myArray.add("A");
myArray.add("B");
myArray.add("B");
myArray.add("B");
myArray.add("C");
myArray.add("C");
myArray.add("D");
myArray.add("D");
myArray.add("D");

//the above will output: A,A,B,B,B,C,C,D,D,D

String rotateTo = "C";

//this gives me random unwanted results...
for (int i = 0; i < myArray.size(); i++) {
    String item = myArray.get(i);
    if(item.equals(rotateTo)){
        Collections.rotate(myArray, i);
        break;
    }
}

//the output I need: C,C,D,D,D,A,A,B,B,B

무엇이 잘못되었을 수 있습니까?

아비 섹

코드의 작은 변경으로 작동합니다.

ArrayList<String> myArray = new ArrayList();

    myArray.add("A");
    myArray.add("A");
    myArray.add("B");
    myArray.add("B");
    myArray.add("B");
    myArray.add("C");
    myArray.add("C");
    myArray.add("D");
    myArray.add("D");
    myArray.add("D");

    //the above will output: A,A,B,B,B,C,C,D,D,D

    System.out.println(myArray);

    String rotateTo = "C";

    int distance = -1;

    for (int i = 0; i < myArray.size(); i++) {
        String item = myArray.get(i);
        if(item.equals(rotateTo)){
            distance = i;
            break;
        }
    }

    //you can use distance = myArray.indexOf(rotateTo);
    //to get index rather than above for loop
    //Check Jerry Ans.


    if (distance != -1) {
        //this gives me random unwanted results...
        Collections.rotate(myArray, distance);
    }

    System.out.println(myArray);

출력 [A, A, B, B, B, C, C, D, D, D] [C, C, D, D, D, A, A, B, B, B]

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

ArrayList 내에 저장된 특정 속성으로 값을 설정하려면 어떻게해야합니까?

분류에서Dev

기존 그룹을 선택 항목으로 복제하고 수정하려면 어떻게해야합니까?

분류에서Dev

arraylist의 속성으로 <Object, ArrayList <Object >> 맵을 정렬하려면 어떻게해야합니까?

분류에서Dev

로그를 회전하도록 OpenVPN을 설정하려면 어떻게해야합니까?

분류에서Dev

DataFrame의 이전 행 값을 기반으로 특정 값에 태그를 지정하려면 어떻게해야합니까?

분류에서Dev

사전 목록에서 특정 사전의 값을 구체적으로 인쇄하려면 어떻게해야합니까?

분류에서Dev

R에서 각 그룹의 항목 수를 기준으로 정렬 된 그룹화 된 데이터를 플로팅하려면 어떻게해야합니까?

분류에서Dev

Python 2의 이전 목록에서 특정 항목으로 새 목록을 만들려면 어떻게해야합니까?

분류에서Dev

모델 내부의 특정 키 값을 동적으로 얻으려면 어떻게해야합니까?

분류에서Dev

목록의 값을 값으로 기준으로 내림차순으로 사전을 정렬하려면 어떻게해야합니까?

분류에서Dev

두 ArrayList의 중복 된 값을 얻으려면 어떻게해야합니까?

분류에서Dev

목록을 기반으로 DataFrame의 특정 열에 액세스하려면 어떻게해야합니까?

분류에서Dev

LinearGradientPaint로 그린 캔버스에서 특정 RGB 값을 얻으려면 어떻게해야합니까?

분류에서Dev

이 특정 문자열의 여러 항목을 찾아서 목록으로 분할하려면 어떻게해야합니까?

분류에서Dev

특정 프로그램을 항상 트레이로 최소화하려면 어떻게해야합니까?

분류에서Dev

정렬 할 때 특정 값을 무시하여 항상 정렬 된 목록의 맨 아래에 표시되도록하려면 어떻게해야합니까?

분류에서Dev

특정 태그 (예 : AbsListView, GestureDetector, endeffect)에 대한 Android의 내부 로깅을 비활성화하려면 어떻게해야합니까?

분류에서Dev

Python의 CSV 파일에서 특정 항목의 행 번호를 찾으려면 어떻게해야합니까?

분류에서Dev

C ++에서 태그를 기반으로 특정 기능을 실행하려면 어떻게해야합니까?

분류에서Dev

VBA의 경우 IF 문을 사용하여 특정 범위를 전자 메일의 그림으로 표시하려면 어떻게해야합니까?

분류에서Dev

* ngFor 목록의 각 항목에서 특정 요소의 클래스를 각도로 전환하려면 어떻게해야합니까?

분류에서Dev

* ngFor 목록의 각 항목에서 특정 요소의 클래스를 각도로 전환하려면 어떻게해야합니까?

분류에서Dev

사전 순으로 정렬 된 두 개의 String ArrayList를 새로운 세 번째 ArrayList로 병합하려면 어떻게해야합니까?

분류에서Dev

디렉토리의 특정 파일을 재귀 적으로 grep하려면 어떻게해야합니까?

분류에서Dev

Pandas의 레이블을 기반으로 특정 행만 선택하려면 어떻게해야합니까?

분류에서Dev

ipset 항목을 "age"로 설정하려면 어떻게해야합니까?

분류에서Dev

정렬 된 목록을이 목록의 연속 요소의 시작 및 끝점의 튜플로 그룹화하려면 어떻게해야합니까?

분류에서Dev

특정 필드의 조건에 따라 필드별로 그룹화하려면 어떻게해야합니까?

분류에서Dev

URL을 전달하여 SVN 로그 정보를 얻으려면 어떻게해야합니까?

Related 관련 기사

  1. 1

    ArrayList 내에 저장된 특정 속성으로 값을 설정하려면 어떻게해야합니까?

  2. 2

    기존 그룹을 선택 항목으로 복제하고 수정하려면 어떻게해야합니까?

  3. 3

    arraylist의 속성으로 <Object, ArrayList <Object >> 맵을 정렬하려면 어떻게해야합니까?

  4. 4

    로그를 회전하도록 OpenVPN을 설정하려면 어떻게해야합니까?

  5. 5

    DataFrame의 이전 행 값을 기반으로 특정 값에 태그를 지정하려면 어떻게해야합니까?

  6. 6

    사전 목록에서 특정 사전의 값을 구체적으로 인쇄하려면 어떻게해야합니까?

  7. 7

    R에서 각 그룹의 항목 수를 기준으로 정렬 된 그룹화 된 데이터를 플로팅하려면 어떻게해야합니까?

  8. 8

    Python 2의 이전 목록에서 특정 항목으로 새 목록을 만들려면 어떻게해야합니까?

  9. 9

    모델 내부의 특정 키 값을 동적으로 얻으려면 어떻게해야합니까?

  10. 10

    목록의 값을 값으로 기준으로 내림차순으로 사전을 정렬하려면 어떻게해야합니까?

  11. 11

    두 ArrayList의 중복 된 값을 얻으려면 어떻게해야합니까?

  12. 12

    목록을 기반으로 DataFrame의 특정 열에 액세스하려면 어떻게해야합니까?

  13. 13

    LinearGradientPaint로 그린 캔버스에서 특정 RGB 값을 얻으려면 어떻게해야합니까?

  14. 14

    이 특정 문자열의 여러 항목을 찾아서 목록으로 분할하려면 어떻게해야합니까?

  15. 15

    특정 프로그램을 항상 트레이로 최소화하려면 어떻게해야합니까?

  16. 16

    정렬 할 때 특정 값을 무시하여 항상 정렬 된 목록의 맨 아래에 표시되도록하려면 어떻게해야합니까?

  17. 17

    특정 태그 (예 : AbsListView, GestureDetector, endeffect)에 대한 Android의 내부 로깅을 비활성화하려면 어떻게해야합니까?

  18. 18

    Python의 CSV 파일에서 특정 항목의 행 번호를 찾으려면 어떻게해야합니까?

  19. 19

    C ++에서 태그를 기반으로 특정 기능을 실행하려면 어떻게해야합니까?

  20. 20

    VBA의 경우 IF 문을 사용하여 특정 범위를 전자 메일의 그림으로 표시하려면 어떻게해야합니까?

  21. 21

    * ngFor 목록의 각 항목에서 특정 요소의 클래스를 각도로 전환하려면 어떻게해야합니까?

  22. 22

    * ngFor 목록의 각 항목에서 특정 요소의 클래스를 각도로 전환하려면 어떻게해야합니까?

  23. 23

    사전 순으로 정렬 된 두 개의 String ArrayList를 새로운 세 번째 ArrayList로 병합하려면 어떻게해야합니까?

  24. 24

    디렉토리의 특정 파일을 재귀 적으로 grep하려면 어떻게해야합니까?

  25. 25

    Pandas의 레이블을 기반으로 특정 행만 선택하려면 어떻게해야합니까?

  26. 26

    ipset 항목을 "age"로 설정하려면 어떻게해야합니까?

  27. 27

    정렬 된 목록을이 목록의 연속 요소의 시작 및 끝점의 튜플로 그룹화하려면 어떻게해야합니까?

  28. 28

    특정 필드의 조건에 따라 필드별로 그룹화하려면 어떻게해야합니까?

  29. 29

    URL을 전달하여 SVN 로그 정보를 얻으려면 어떻게해야합니까?

뜨겁다태그

보관