/Java
2019-10-01 (나누어 떨어지는 숫자 배열)
봉봉이네
2019. 10. 1. 14:19
문제 설명
array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요.
divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요.
제한 사항
- arr은 자연수를 담은 배열입니다.
- 정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다.
- divisor는 자연수입니다.
- array는 길이 1 이상인 배열입니다.
내가 푼 내용
import java.util.*;
import java.util.stream.*;
class Solution {
public int[] solution(int[] arr, int divisor) {
int[] answer = Arrays.stream(arr).filter(x -> (x % divisor == 0)).sorted().toArray();
return answer.length != 0 ? answer : new int[]{-1};
}
}
풀어본 소감
stream를 이용하여 만듬. 문득 든 생각이... stream 의 장단점이 궁금해져서 정리가 필요할듯.
아래 참고
https://okky.kr/article/329818
OKKY | 자바 8 Stream API 과 주의사항
이 글은 자바 8 Stream API 를 아는 사람이 주의해야 할 것에 대해 쓰여진 글이지만 , 몰라도 상관없습니다. 이 글 읽어보면 대충 이런거구나 알 수 있으니깐요. Java 8 Stream API 을 배워야하는 이유로 가독성/간편성 과 성능/공짜점심 으로 보통 꼽습니다. * 가독성 코어 자바
okky.kr