programing

어레이의 모든 요소를 Java의 특정 값으로 초기화하는 방법

kingscode 2022. 12. 28. 21:52
반응형

어레이의 모든 요소를 Java의 특정 값으로 초기화하는 방법

C/C++우리는 가지고 있다.memset()제 소원을 들어줄 수 있는 기능이지만Java모든 요소를 특정 값으로 초기화하려면 어떻게 해야 합니까?우리가 글을 쓸 때마다int[] array=new int[10];모든 요소가 0인 크기 10의 배열을 초기화하기만 하면 됩니다.어레이 중 하나의 초기화 정수를 변경하려고 합니다.모든 요소가 동일한 배열을 초기화합니다.-1안그러면 난 이걸 넣어야 해for초기화 직후의 루프(인덱스 범위)0색인화하다size-1그리고 그 루프 안에서, 나는 요소를-1아래는 좀 더 이해하기 위한 코드입니다.

    int[] array = new int[10];
    for (int i = 0; i < size; i++) {
        array[i] = -1;
    }

내가 제대로 가고 있는 거야?같은 방법으로 다른 방법이 있나요?

원시적인 타입이라면Arrays.fill():

Arrays.fill(array, -1);

(그런데 C 또는 C++는 의 어레이에서만 실제로 사용됩니다.)

그리고 또

int[] array = {-1, -1, -1, -1, -1, -1, -1, -1, -1, -1};

Java 8 스트림에서도 가능합니다.

int[] a = IntStream.generate(() -> value).limit(count).toArray();

하지만 가장 효율적인 방법은 아닐 수도 있습니다.

짧은 경우에는 다음과 같이 할 수 있습니다.

int[] array = {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};

하지만 몇몇이 아니라 더 나빠지는 모르겠지만

보다 쉬운 것은for루프:

  int[] myArray = new int[10];
  for (int i = 0; i < array.length; i++)
       myArray[i] = -1;

편집: 또한Arrays.fill()다른 사람들이 언급한 옵션입니다.

java.displaces를 클릭합니다.Arrays.fill()

어레이를 사용해 본 적이 있습니까?채우기 기능?

사용할 수 있습니다.Arrays.fill(array, -1).

Arrays.fill()을 사용할 수 있는 것은 분명합니다.단, 이 방법은 동작합니다.

Java 8을 사용하면 간단하게ncopiesCollections클래스:

Object[] arrays = Collections.nCopies(size, object).stream().toArray();

고객님의 경우 다음과 같습니다.

Integer[] arrays = Collections.nCopies(10, Integer.valueOf(1)).stream().toArray(Integer[]::new);
.

여기 당신의 유사한 사례에 대한 자세한 답변이 있습니다.

사용할 수 있는 목록

Collections.fill(arrayList, "-")

java.utils의 배열 클래스에는 이를 위한 메서드가 있습니다.

Arrays.fill(your_array, value_to_fill);

언급URL : https://stackoverflow.com/questions/10078867/how-to-initialize-all-the-elements-of-an-array-to-any-specific-value-in-java

반응형