Java에서 어레이를 초기화하는 방법
다음과 같이 어레이를 초기화합니다.
public class Array {
int data[] = new int[10];
/** Creates a new instance of Array */
public Array() {
data[10] = {10,20,30,40,50,60,71,80,90,91};
}
}
NetBeans는 다음 행에서 오류를 가리킵니다.
data[10] = {10,20,30,40,50,60,71,80,90,91};
어떻게 하면 문제를 해결할 수 있을까요?
data[10] = {10,20,30,40,50,60,71,80,90,91};
위의 내용이 올바르지 않습니다(구문 오류).즉, 어레이를 에 할당하는 것을 의미합니다.data[10]
어떤 요소만 담을 수 있어요
어레이를 초기화하려면 Array Initializer를 사용해 보십시오.
int[] data = {10,20,30,40,50,60,71,80,90,91};
// or
int[] data;
data = new int[] {10,20,30,40,50,60,71,80,90,91};
두 선언의 차이점에 주목하십시오.선언된 변수에 새 배열을 할당할 때new
사용해야 합니다.
구문을 수정한 경우에도,data[10]
아직 올바르지 않습니다(접근할 수 있는 것은data[0]
로.data[9]
Java 어레이의 인덱스는 0 베이스이기 때문입니다).액세스data[10]
는 ArrayIndexOutOfBoundsException을 슬로우합니다.
해라
data = new int[] {10,20,30,40,50,60,71,80,90,91 };
크기가 10인 배열을 만들면 슬롯이 10개 할당되지만 0 ~9가 할당됩니다.이 for loop을 사용하면 더 잘 알 수 있습니다.
public class Array {
int[] data = new int[10];
/** Creates a new instance of an int Array */
public Array() {
for(int i = 0; i < data.length; i++) {
data[i] = i*10;
}
}
}
다음 작업을 수행할 수 있습니다.
int[] data = {10,20,30,40,50,60,71,80,90,91};
구문
Datatype[] variable = new Datatype[] { value1,value2.... }
Datatype variable[] = new Datatype[] { value1,value2.... }
예:
int [] points = new int[]{ 1,2,3,4 };
비공식 웹 사이트를 학습하는 대신 Oracle 웹 사이트에서 학습합니다.
링크는 다음과 같습니다.여기를 클릭해 주세요.
* Initialization(초기화) 및 Declaration(선언)을 찾을 수 있습니다.*
int n; // size of array here 10
int[] a = new int[n];
for (int i = 0; i < a.length; i++)
{
a[i] = Integer.parseInt(s.nextLine()); // using Scanner class
}
입력: 10//어레이 사이즈 10 20 30 40 50 60 71 80 90 91
데이터 표시:
for (int i = 0; i < a.length; i++)
{
System.out.println(a[i] + " ");
}
출력: 10 20 30 40 50 60 71 80 90 91
이와 같이 어레이를 초기화할 수 없습니다.다른 사람이 제안한 것 외에 다음을 수행할 수 있습니다.
data[0] = 10;
data[1] = 20;
...
data[9] = 91;
생성자에서 배열을 초기화하려면 다음과 같은 배열 이니셜라이저를 사용할 수 없습니다.
data= {10,20,30,40,50,60,71,80,90,91};
로 변경해 주세요.
data = new int[] {10,20,30,40,50,60,71,80,90,91};
크기를 지정할 필요가 없습니다.data[10] = new int[] { 10,...,91}
속성/필드를 선언하기만 하면 됩니다.int[] data;
위와 같이 초기화합니다.코드 수정 버전은 다음과 같습니다.
public class Array {
int[] data;
public Array() {
data = new int[] {10,20,30,40,50,60,71,80,90,91};
}
}
보시는 바와 같이 괄호는 비어 있습니다.초기화 및 크기는 각 괄호 사이의 요소 수에 따라 지정되기 때문에 각 괄호 사이의 크기를 구분할 필요가 없습니다.
배열의 10번째 요소를 배열 시행으로 설정하려고 합니다.
data = new int[] {10,20,30,40,50,60,71,80,90,91};
FTFY
이 방법이 효과적일 수 있습니다.
public class Array {
int data[] = new int[10];
/* Creates a new instance of Array */
public Array() {
data= {10,20,30,40,50,60,71,80,90,91};
}
}
언급URL : https://stackoverflow.com/questions/1938101/how-to-initialize-an-array-in-java
'programing' 카테고리의 다른 글
값이 완전히 업데이트되기 전에 Vue 3 워치가 호출됩니다. (0) | 2022.08.01 |
---|---|
부호 없는 정수 빼기는 정의된 동작입니까? (0) | 2022.08.01 |
Vuex getter가 클라이언트 측에서는 TRUE를 반환하고 서버 측에서는 FALSE를 반환하는 이유는 무엇입니까? (0) | 2022.08.01 |
v-html의 Vue 구성 요소/요소 (0) | 2022.08.01 |
유용한 Eclipse Java 코드 템플릿 찾기 (0) | 2022.08.01 |