카테고리 없음

Lotto 뽑기 2! 중복 허용하지 않는 Set! 오름차순sort! 노가다 내림차순!

장꾸꾸 2020. 10. 15. 11:18
package collection1;

import java.util.HashSet;
import java.util.Set;

public class LottoNumber {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Set<Integer> lotto = new HashSet<>();
		while(lotto.size()<6) {
			lotto.add((int)(Math.random()*45)+1); // 1~45사이의 수
		}
		
		for(Integer ob: lotto) {
			System.out.println(ob);
		}
	}

}

 

Set은 정렬이 안되니까 sort 사용

 

... 동일
		List<Integer> list = new ArrayList(lotto);
		Collections.sort(list); // 오름차순
		
		for(Integer ob: list) {
			System.out.println(ob);
		}
	}
//	Set은 정렬이 안되니까 sort 사용

 

sort는 오름차순만 됨!

 

바꿔서 내림차순!

Comparator 사용

		List<Integer> list = new ArrayList(lotto);
		Collections.sort(list, new Comparator<Integer>() {

			@Override
			public int compare(Integer o1, Integer o2) {
				// TODO Auto-generated method stub
				return o2.compareTo(o1); //내림차순 // 오름차순은 반대
			}
			
		}); 
		
		for(Integer ob: list) {
			System.out.println(ob);
		}
	}

 

 

 

 

 

관련 포스팅

coding-factory.tistory.com/549

 

[Java] 자바 배열 정렬하기(오름차순, 내림차순) Arrays.sort()

자바에서 배열이나 리스트를 정렬하려고 한다면 java.util.Arrays 클래스의 sort() 메서드를 사용하시면 따로 정렬 로직을 짜지 않아도 한번의 메소드 호출로 간편하게 배열이나 리스트를 정렬할 수 �

coding-factory.tistory.com

import java.util.Arrays;

public class Sort{
    public static void main(String[] args)  {
        Integer arr[] = {4,23,33,15,17,19};
        Arrays.sort(arr,Collections.reverseOrder());
        
        for (int i : arr) {
            System.out.print("["+i+"]");
        }
    }
}