programmers
[JAVA] 배열 자르기 Arrays.copyOfRange
아잠만_
2024. 3. 11. 19:27
정수 배열 numbers와 정수 num1, num2가 매개변수로 주어질 때, numbers의 num1번 째 인덱스부터 num2번째 인덱스까지 자른 정수 배열을 return 하도록 solution 함수를 완성해보세요.
입출력 예 #1
[1, 2, 3, 4, 5]의 1번째 인덱스 2부터 3번째 인덱스 4 까지 자른 [2, 3, 4]를 return 합니다.
입출력 예 #2
[1, 3, 5]의 1번째 인덱스 3부터 2번째 인덱스 5까지 자른 [3, 5]를 return 합니다.]
풀이 1)
class Solution {
public int[] solution(int[] numbers, int num1, int num2) {
int[] answer = new int[(num2-num1+1)];
int j = 0;
for(int i=num1;i<=num2;i++){
answer[j]=numbers[i];
j++;
}
return answer;
}
}
풀이2) Arrays.copyOfRange
import java.util.*;
class Solution {
public int[] solution(int[] numbers, int num1, int num2) {
int[] answer = Arrays.copyOfRange(numbers, num1, num2+1);
return answer;
}
}
Array.copyOf
Array.copyOf(원본배열, 복사할 길이)
Array.copyOfRange(원본배열, 복사할 시작인덱스, 복사할 마지막 인덱스)
배열 복사