카테고리 없음

[programers][level1] 나누어 떨어지는 숫자 배열

키보드발 2022. 10. 23. 05:35
package study.algorithms.programers.level1.나누어떨어지는숫자배열;

import java.util.ArrayList;

import java.util.Collections;

public class Solution {
    public int[] solution(int[] arr, int divisor) {
        int[] answer = {};
        ArrayList<Integer> ansList = new ArrayList<>();
        for (int i : arr){if (i % divisor == 0) ansList.add(i);}

        if(ansList.size()==0) return new int[]{-1};
        Collections.sort(ansList);
        answer = ansList.stream().mapToInt(i->i).toArray();

        return answer;
    }
}
answer = ansList.stream().mapToInt(i->i).toArray();

ArrayList를 배열로 변환할때 for를 쓰지말고 stream으로 쓰면 한줄로 변환할 수 있다.

Collections.sort의 기본은 오름차순이다.

 

내림차순으로 하고 싶다면

        Collections.sort(list, Collections.reverseOrder());