어제 오늘 내일

[Java] 특정 인덱스에서 배열 자르기 본문

IT/Java

[Java] 특정 인덱스에서 배열 자르기

hi.anna 2021. 7. 16. 23:11

 

Java에서 특정 인덱스를 기준으로 

배열을 자르는 2가지 방법을 소개합니다.

 

  1. 반복문 이용하기
  2. Arrays.copyOfRange() 이용하기

 

 

1. 반복문 이용하기

import java.util.Arrays;
public class ArraySplit {
public static void main(String[] args) {
// 1. 원본 배열
int[] arr = {0, 1, 2, 3, 4, 5};
// 2. 배열을 자를 index
int position = 3;
// 3. 자른 배열을 담을 새로운 배열
int[] arr1 = new int[position];
int[] arr2 = new int[arr.length - position];
// 4. 배열 자르기
for(int i = 0; i < arr.length; i++) {
if( i < position) {
arr1[i] = arr[i];
}else {
arr2[i - position] = arr[i];
}
}
// 5. 자른 배열 출력
System.out.println(Arrays.toString(arr1)); // [0, 1, 2]
System.out.println(Arrays.toString(arr2)); // [3, 4, 5]
}
}

반복문을 이용하여, 배열을 순회하면서 

주어진 index 전/후의 값을 각각의 새로운 배열에 담아서

배열을 잘랐습니다.

 

 

 

2. Arrays.copyOfRange() 이용하기

import java.util.Arrays;
public class ArraySplit {
public static void main(String[] args) {
// 1. 원본 배열
int[] arr = {0, 1, 2, 3, 4, 5};
// 2. 배열을 자를 index
int position = 3;
// 3. 배열 자르기
int[] arr1 = Arrays.copyOfRange(arr, 0, position);
int[] arr2 = Arrays.copyOfRange(arr, position, arr.length);
// 4. 자른 배열 출력
System.out.println(Arrays.toString(arr1)); // [0, 1, 2]
System.out.println(Arrays.toString(arr2)); // [3, 4, 5]
}
}

int[] arr1 = Arrays.copyOfRange(arr, 0, position);
int[] arr2 = Arrays.copyOfRange(arr, position, arr.length);

Arrays.copyOfRange() 메소드를 이용하여, 

배열의 특정 영역을 복사하여, 

배열을 2개로 분리하였습니다.

 

 


 

배열을 특정 index를 기준으로 자르는 방법을 알아보았습니다.

 

 

반응형