[ JAVA ] 배열 정렬

2022. 8. 18. 23:52·프로그래밍/JAVA

자바는 배열을 정렬할 때 반복문이 필요없다는것을 몰랐다. 백준 문제를 풀면서 자바를 공부하려고 했는데 이론을 먼저 공부 해야되나 고민이 되긴하지만 그랬다가는 너무 속도가 떨어질거같다..ㅜㅜ 역시 독학은 쉽지 않은거같다.


Arrays.sort()

 배열 오름차순

 Arrays.sort(변수명)을 사용하여 간단하게 오름차순 정렬이 가능하다.

import java.util.Arrays;

public class SortUp
	public static void main(String[] args){
        int[] array = {56, 78, 26, 19, 47};
        
        Arrays.sort(array); 		//배열 오름차순 정렬
        
        for(int i=0; i<array.length ; i++)
        	System.out.printf(" [%d] ", array[i]);
        }
 }
 // [19]  [26]  [47]  [56]  [78]

배열 내림차순

배열을 내림차순으로 정렬하기 위해서 Sort()메소드를 쓸 경우 아래와 같은 에러가 뜬다.

The method sort(int[]) in the type Arrays is not applicable for the arguments (int[], Collections.reverseOrder())

이 에러는 int에서는  Collections.reverseOrder()가 사용을 할 수 없어서 생긴다.

이러한 에러없이 내림차순정렬을 하려면 int[]가 아닌 Interger[]변수로 선언을 해야한다.

(아직까진 왜 변수선언을 저렇게 해야하는지 공부하지 못했다. 해당 내용 공부 후 추가할 예정!)

import java.util.Arrays;
import java.util.Collections;

public class SortDown {
	public static void main(String[] args) {
    	Integer[] array = {58, 32, 64, 12, 15, 99};
        
        Arrays.sort(array, Collections.reverseOrder());
        
        for(int i=0; i<array.length; i++)
        	System.out.printf(" [%d] ", array[i]);
        }
}
// [99]  [64]  [58]  [32]  [15]  [12]

배열 부분적으로 내림차순 정렬하기

Arrays.sort(배열변수, 시작index, 종료index, Collections.reverseOrder()); 를 사용하여 부분적인 내림차순 가능하다.

import java.util.Arrays;
import java.util.Collections;

public class SortPart{
	public static void main(String[] args)  {	
		Integer[] array = {58, 32, 64, 12, 15, 99};
		
		Arrays.sort(array, 1, 4, Collections.reverseOrder());
		
		for(int i = 0; i < array.length; i++)		
			System.out.printf" [%d] ", array[i]);		
	}
}
//[58]  [64]  [32]  [12]  [15]  [99]

 

'프로그래밍 > JAVA' 카테고리의 다른 글

[Java 기초] OOP와 Java 언어의 특징  (0) 2024.09.26
[ JAVA ] StringBuilder - 문자열 더하기  (0) 2022.08.25
[ JAVA ] StringTokenizer()를 사용한 문자열 분리  (0) 2022.08.21
[ JAVA ] 배열  (0) 2022.08.18
[ JAVA ] 표준 입출력  (0) 2022.08.16
'프로그래밍/JAVA' 카테고리의 다른 글
  • [ JAVA ] StringBuilder - 문자열 더하기
  • [ JAVA ] StringTokenizer()를 사용한 문자열 분리
  • [ JAVA ] 배열
  • [ JAVA ] 표준 입출력
70_0ewd
70_0ewd
내가 보려고 적는 나의 공부 기록
  • 70_0ewd
    Seung's Learning Record
    70_0ewd
  • 전체
    오늘
    어제
    • 분류 전체보기 (92)
      • DE (2)
      • Dev Tool (29)
        • Flutter (5)
        • AWS (8)
        • Django (7)
        • Spring boot (9)
      • 프로그래밍 (30)
        • C++ (0)
        • JAVA (6)
        • SQL (13)
        • Python (8)
        • WEB (3)
      • 알고리즘 (26)
      • CS (5)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    group by
    Flutter
    파이썬
    select
    django
    delete
    Queue
    Python
    heap
    큐
    공룡책
    자바
    데브코스
    너비 우선 탐색
    플러터
    백준
    JOIN
    프로그래머스
    웹 스크래핑
    깊이 우선 탐색
    DFS
    Java
    AWS
    스택
    BFS
    stl
    백트래킹
    DP
    C++
    SQL
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
70_0ewd
[ JAVA ] 배열 정렬
상단으로

티스토리툴바