Java로 배열 채우기

Mohd Ebad Naqvi 2023년10월12일
  1. { }를 사용하여 Java에서 배열 채우기
  2. for루프를 사용하여 Java에서 배열 채우기
  3. Arrays.copyOf()메소드를 사용하여 Java 배열의 요소 채우기
  4. Arrays.fill()메소드를 사용하여 Java 배열의 요소 채우기
Java로 배열 채우기

사용자 정의에 따라 배열은 기본 요소이거나 클래스의 객체 (또는 기본이 아닌) 참조입니다.

기본 데이터 유형 배열에서 요소는 인접한 메모리 위치에 저장됩니다. 반대로 원시 데이터 유형이 아닌 경우 요소는 동적 메모리 (힙 세그먼트)에 저장됩니다.

이 튜토리얼에서는 Java로 배열을 채 웁니다. 여기서 채우기는 배열을 일부 값으로 채우는 것을 의미합니다.

{ }를 사용하여 Java에서 배열 채우기

배열을 채우는 가장 기본적인 방법 중 하나입니다. 중괄호 {}는 배열의 요소를 정의하는 데 사용됩니다.

예를 들면

import java.util.*;
public class Num {
  public static void main(String args[]) {
    int arr[] = {1, 3, 5, 7, 11}; // Declaration of elements using { }

    for (int j = 0; j < arr.length; j++) {
      System.out.print(array[j] + " ");
    }
  }
}

출력:

1 3 5 7 11

for루프를 사용하여 Java에서 배열 채우기

Scanner클래스는 사용자의 배열 요소를 스캔하는 데 사용됩니다. 사용자의 길이와Scanner클래스 요소의 객체 사용이 각 반복에 입력 될 때까지 루프를 실행합니다.

다음 코드를 참조하십시오.

import java.util.Scanner;
public class ArrayInputUsingLoop {
  public static void main(String[] args) {
    int number;
    Scanner obj = new Scanner(System.in);
    System.out.print("Total number of elements: ");
    number = obj.nextInt();
    int[] array = new int[20];
    System.out.println("Enter the elements of the array: ");
    for (int i = 0; i < number; i++) {
      array[i] = obj.nextInt(); // reads elements from the user
    }
    System.out.println("Array elements you entered are: ");
    for (int i = 0; i < number; i++) {
      System.out.println(array[i]);
    }
  }
}

출력:

Total number of elements: 5
Enter the elements of the array: 
5
4
3
2
1
Array elements you entered are: 
5
4
3
2
1

Arrays.copyOf()메소드를 사용하여 Java 배열의 요소 채우기

Array.copyOf()메소드는java.util.Arrays클래스에 속합니다. 이 함수는 특정 배열을 복사하고 복사 배열의 주어진 길이를 유지하기 위해 필요한 경우 0 또는 null 값으로 자릅니다.

원본 및 복사 된 배열의 모든 유효한 인덱스에 대해 동일한 값이 있습니다.

예를 들면

import java.util.Arrays;

public class Main {
  public static void main(String[] args) {
    int[] array1 = new int[] {8, 9, 10, 11, 12};

    System.out.println("First array is:");
    for (int i = 0; i < array1.length; i++) {
      System.out.println(array1[i]);
    }

    int[] array2 = Arrays.copyOf(array1, 7);
    array2[5] = 6;
    array2[6] = 7;

    System.out.println("New array after copying elements is:");
    for (int i = 0; i < array2.length; i++) {
      System.out.println(array2[i]);
    }
  }
}

출력:

First array is:
8
9
10
11
12
New array after copying elements is:
8
9
10
11
12
6
7

길이가 원래 배열을 초과하면 추가 요소가 0 값으로 보정됩니다.

예를 들면

import java.util.Arrays;

public class ArrayCopy {
  public static void main(String args[]) {
    int[] originalarray = new int[] {7, 8, 9};
    System.out.println("The Original Array is : \n");
    for (int i = 0; i < originalarray.length; i++) System.out.print(originalarray[i] + " ");

    int[] copyarray = Arrays.copyOf(originalarray, 5);

    System.out.print("\nNew Array copy of greater length is:\n");
    for (int i = 0; i < copyarray.length; i++) System.out.print(copyarray[i] + " ");
  }
}

출력:

The Original Array is : 
7 8 9 
New Array copy of greater length is:
7 8 9 0 0 

Arrays.fill()메소드를 사용하여 Java 배열의 요소 채우기

Arrays.fill()메소드는java.util.Arrays클래스에 속합니다.

이 방법을 사용하면 주어진 배열의 모든 요소를 ​​새로 입력 한 요소로 바꿀 수 있습니다. 배열의 모든 위치는 지정된 값 요소로 대체되거나 채워집니다.

예를 들면

import java.util.Arrays;

public class ArrayFill {
  public static void main(String[] args) {
    int array[] = {6, 7, 8, 9, 10};

    Arrays.fill(array, 5);
    System.out.println(Arrays.toString(array));
  }
}

출력:

[5, 5, 5, 5, 5]

인덱스를 지정하여 원래 배열을 새 요소로 부분적으로 채울 수 있습니다.

예를 들면

import java.util.Arrays;

public class ArrayFill2 {
  public static void main(String[] args) {
    int array[] = {7, 8, 9, 10, 11};

    Arrays.fill(array, 2, 5, 0); // Replace elements from index 2 to index 4 by 0

    System.out.println(Arrays.toString(array));
  }
}

출력:

[7, 8, 0, 0, 0]

관련 문장 - Java Array