728x90
1차원 배열 정렬
1차원 배열 오름차순 | 1차원 배열 내림차순 |
import java.util.Arrays; | import java.util.Arrays; import java.util.Collections; |
Arrays.sort(배열); | Arrays.sort(배열, Collections.reverseOrder()); |
int배열 사용가능 | Wrapper Class 사용(Integer 등) |
2차원 배열 정렬
2차원 배열 오름차순 | 2차원 배열 내림차순 |
import java.util.Arrays; import java.util.Comparator; |
import java.util.Arrays; import java.util.Comparator; |
Arrays.sort(배열,new Comparator<int[]>(){내부구문}); | Arrays.sort(배열, new Comparator<int[]>(){내부구문}); |
if(o1[0]==o2[0]){ return o1[1]-o2[1]; } else{ return o1[0]-o2[0] } |
if(o1[0]==o2[0]){ return o1[1]-o2[1]; } else{ return o2[0]-o1[0] } |
- 오름차순(디폴트)
import java.util.Arrays;
public class Sort {
public static void main(String[] args) {
int[] arr = {1,22, 12,55, 44, 4691};
Arrays.sort(arr);
}
}
import java.util.Arrays;
public class Sort {
public static void main(String[] args) {
String[] words = {"피카츄","라이츄","파이리","꼬부기","야도란"};
Arrays.sort(words);
}
}
- 내림차순
내림차순은 Collection.reverseOrder()를 사용한다.
-> 주의할 점 : 기본형 타입들을 내림차순으로 정렬하고 싶다면 배열을 래퍼클래스로 만들어주어야 정렬이 가능함.
예를 들어 int를 내림차순 정렬할 경우, Integer로 변경해주어야함.
String은 기본 타입이 아니므로 타입 변환 없이 정렬이 가능함.
+) int형 배열을 Integer 배열로 바꾸는 방법
Integer[] arr = Arrays.stream(_arr).boxed().toArray(Integer[]::new);
import java.util.Arrays;
import java.util.Collections;
import java.util.Scanner;
public class Main{
static Scanner sc = new Scanner(System.in);
public static void main(String[] args) {
int arr[]= new int[7];
for(int i=0;i<arr.length;i++) {
arr[i]=sc.nextInt();
}
Integer arr1[] = Arrays.stream(arr).boxed().toArray(Integer[]::new);
Arrays.sort(arr1, Collections.reverseOrder());
System.out.println("MAX="+arr1[6]);
System.out.print("MIN="+arr1[0]);
}
}
import java.util.Arrays;
import java.util.Collections;
public class Sort {
public static void main(String[] args) {
String[] words = {"김철수","강동원","공지철","이동욱","박해일","이제훈"};
Arrays.sort(words, Collections.reverseOrder());
}
}
import java.util.Arrays;
import java.util.Collections;
public class Sort {
public static void main(String[] args) {
Integer[] numList = {1,22, 12,55, 44, 4691};
Arrays.sort(numList, Collections.reverseOrder());
}
}
728x90
'💻 > JAVA' 카테고리의 다른 글
[JAVA] 큐(Queue) · 메서드 정리 (0) | 2024.10.14 |
---|---|
[JAVA] 스택 (Stack) · 메서드 정리 (0) | 2024.10.14 |
[JAVA] String 비교하기 (5) | 2024.09.30 |
[JAVA] Java의 인자 전달 , 포인터 ? - call by value, call by reference (0) | 2024.09.29 |
[JAVA] 자바 Int형 Char형 변환 (0) | 2024.09.23 |