본문 바로가기
카테고리 없음

[JAVA][프로그래머스 입문] 배열 두 배 만들기

by 프로P 2024. 3. 2.
정수 배열 numbers가 매개변수로 주어집니다. numbers의 각 원소에 두배한 원소를 가진 배열을 return하도록 solution 함수를 완성해주세요.

1) for문으로 풀기

class Solution {
    public int[] solution(int[] numbers) {
        for(int i = 0; i < numbers.length ; i++){
            numbers[i] *= 2;
        }
        return numbers;
    }
}

2) Arrays.setAll()함수 이용

Arrays.setAll() 함수는 배열의 각 요소를 순회하며 제공된 함수(여기서는 람다 표현식)에 따라 값을 설정하는 데 사용된다.

import java.util.Arrays;
class Solution {
    public int[] solution(int[] numbers) {
        Arrays.setAll(numbers,i->numbers[i]*2);
        return numbers;
    }
}

3) stream API 이용

import java.util.Arrays;

class Solution {
    public int[] solution(int[] numbers) {
        return Arrays.stream(numbers) // 배열을 스트림으로 변환
                     .map(i -> i * 2)  // 각 요소에 대해 연산을 적용 (중간 연산)
                     .toArray();       // 스트림을 배열로 변환 (최종 연산)
    }
}