문제 설명
정수 n과 정수 배열 numlist가 매개변수로 주어질 때, numlist에서 n의 배수가 아닌 수들을 제거한 배열을 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ n ≤ 10,000
- 1 ≤ numlist의 크기 ≤ 100
- 1 ≤ numlist의 원소 ≤ 100,000
문제풀이
import java.util.*;
class Solution {
public int[] solution(int n, int[] numlist) {
int[] answer = Arrays.stream(numlist).filter(value -> value %n ==0).toArray();
return answer;
}
}
1. Arrays.stream 메소드는 배열을 스트림으로 변환하여
2.fileter 메소드를 사용하여 n으로 나눴을때 나머지가 0인 요소들로만 필터링해 새로운 스트림으로 반환
3. toArray() 통해 스트림을 다시배열로 변환한다.
Arrays.stream()은 배열을 스트림으로 변환하는 메소드입니다.
filter()는 Predicate<T>를 인수로 받아서, 조건을 만족하는 스트림 요소만 필터링해 새로운 스트림을 반환합니다. Predicate<T>는 Boolean 값을 반환하는 함수형 인터페이스로, 스트림 요소를 필터링할 조건을 정의할 때 사용됩니다.
예를 들어, Arrays.stream(arr).filter(e -> e > 3) 는 배열 arr의 모든 요소 중 3보다 큰 요소들을 스트림으로 만들어 반환합니다.
'알고리즘 문제 > 프로그래머스' 카테고리의 다른 글
프로그래머스 0단계 문자열 정렬하기 (2) - java (0) | 2023.05.11 |
---|---|
프로그래머스 0단계 문자열안에 문자열- java (0) | 2023.05.11 |
프로그래머스 0 단계 자릿수 더하기-java (0) | 2023.05.10 |
프로그래머스 0 단계 숫자 찾기-java (0) | 2023.05.10 |
프로그래머스 0단계 문자열 계산하기-java (0) | 2023.05.09 |