본문 바로가기
개발/백엔드-JAVA

👩🏻‍🏫 Arrays.copyOfRange 메서드를 알아보자

by 쑨토리 2022. 8. 2.
반응형

✏️Arrays.copyOfRange() 는 특정 배열의 원하는 범위만큼 복사하여 새로운 배열을 만드는 메소드함수.

 

새로운 배열  =  Arrays.copyOfRange( 원본 배열, Start 인덱스, End 인덱스 + 1 )

 

🚨 여기서 주의할 포인트는 바로

End 인덱스 + 1 !

+1을 하지 않으면 end 인덱스 직전까지 복사를 하기 떄문에 복사하려는 마지막 요소의 인덱스의 바로 다음 인덱스인덱스를 해주어야 한다. 

 


[예제]

 

 

 

[예제 코드]

import java.util.*; 

public class Solution { 
private static int[] arr = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; 

public static void main(String[] args) { 
int[] arr1 = Arrays.copyOfRange(arr, 2,6); 

System.out.print("arr의 요소 중 인덱스2에서 5까지  불러오기 :  "); 
for(int i=0;i<arr1.length;i++) { 
System.out.print(arr1[i]+" "); 
} 
} 
}

 

아래 메소드를 활용해서 푼 문제가 있으니 참고해도 좋을 듯 하다. 

https://ssoontory.tistory.com/66

 

 

[프로그래머스] K번째 수 (자바)

📖  문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5..

ssoontory.tistory.com

 

 


아래는 메소드 공부하며 참고한 블로그. 

 

[JAVA] 특정범위 배열복사 Arrays.copyOfRange()

Arrays.copyOfRange() 는 특정 배열의 원하는 범위만큼 복사하여 새로운 배열을 만드는 메소드함수입니다. 새로운 배열 = Arrays.copyOfRange(원본 배열,복사하려는 시작 요소의 인덱스,복사하려는 마지막

sno-machinelearning.tistory.com

 

 

출처: https://sno-machinelearning.tistory.com/19 [스노의 머신러닝 스터디 정리:티스토리]