1. 개요
자바 언어에서 배열(Array)을 정렬하는 방법이다. Arrays.sort 를 사용한다.
2. 숫자 정렬
import java.util.Arrays; public class ArraySort { public static void main(String[] args) { int nums[] = { 13, 47, 55, 61, 99, 45 }; for ( int n : nums ) { System.out.println(n); } Arrays.sort(nums); System.out.println("After sort ->"); for ( int n : nums ) { System.out.println(n); } } }
결과는 다음과 같다.
13 47 55 61 99 45 After sort -> 13 45 47 55 61 99
3. 숫자 역정렬 (Reverse)
- int 배열을 Integer[] 배열로 변환
- Reverse 처리
import java.util.Arrays; import java.util.Collections; public class ArraySort { public static void main(String[] args) { int nums[] = { 13, 47, 55, 61, 99, 45 }; for ( int n : nums ) { System.out.println(n); } Arrays.sort(nums); System.out.println("After sort ->"); for ( int n : nums ) { System.out.println(n); } Integer[] numInt = Arrays.stream(nums).boxed().toArray(Integer[]::new); Arrays.sort(numInt, Collections.reverseOrder()); System.out.println("After reverse sort ->"); for ( Integer n : numInt ) { System.out.println(n); } } }
결과는 다음과 같다.
13 47 55 61 99 45 After sort -> 13 45 47 55 61 99 After reverse sort -> 99 61 55 47 45 13
4. 문자 정렬
import java.util.Arrays; public class ArraySort { public static void main(String[] args) { String strs[] = { "Apple", "Dell", "Gateway", "Sambo", "Daewoo" }; for ( String s : strs ) { System.out.println(s); } Arrays.sort(strs); System.out.println("After sort ->"); for ( String s : strs ) { System.out.println(s); } } }
결과는 다음과 같다.
Apple Dell Gateway Sambo Daewoo After sort -> Apple Daewoo Dell Gateway Sambo
5. 문자 역정렬 (Reverse)
- ArrayList로 변환
- 정렬 후 다시 배열로 변환
import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; public class ArraySort { public static void main(String[] args) { String strs[] = { "Apple", "Dell", "Gateway", "Sambo", "Daewoo" }; for ( String s : strs ) { System.out.println(s); } Arrays.sort(strs); System.out.println("After sort ->"); for ( String s : strs ) { System.out.println(s); } ListstrList = new ArrayList (Arrays.asList(strs)); Collections.reverse(strList); System.out.println("After reverse sort ->"); String[] sortedStrs = strList.toArray(new String[strList.size()]); for ( String s : sortedStrs ) { System.out.println(s); } } }
결과는 다음과 같다.
Apple Dell Gateway Sambo Daewoo After sort -> Apple Daewoo Dell Gateway Sambo After reverse sort -> Sambo Gateway Dell Daewoo Apple