답변:
모든 배열 요소를 Boolean false로 초기화하면됩니다.
boolean[]
모든 값의 기본값이 false
다음과 같도록 대신 사용 하십시오 .
boolean[] array = new boolean[size];
또는을 사용 Arrays#fill()
하여 전체 배열을 Boolean.FALSE
다음 으로 채 웁니다 .
Boolean[] array = new Boolean[size];
Arrays.fill(array, Boolean.FALSE);
또한 배열 인덱스는 0부터 시작합니다. freq[Global.iParameter[2]] = false;
당신이 거기에 있었던 라인은 ArrayIndexOutOfBoundsException
. Java의 배열에 대해 자세히 알아 보려면 이 기본 Oracle 자습서를 참조하십시오 .
Boolean[] array
각 요소에 대해 세 가지 상태 ( true
, false
및) 를 가질 수 있기 때문에 실제로 찬성합니다 . null
이는 무언가가 "처리되지 않음"이라는 사실을 확인하려는 경우에 유용합니다.
배열은 할당 할 때 false로 초기화됩니다.
Java의 모든 배열은 해당 유형의 기본값으로 초기화됩니다. 즉, int 배열은 0으로 초기화되고 부울 배열은 false로 초기화되며 참조 유형 배열은 null로 초기화됩니다.
Boolean
하고 있지 않으므로 boolean
기본적으로 null
.
Java의 배열은 0에서 인덱싱을 시작합니다. 따라서 예제에서는 배열 외부에있는 요소를 하나씩 참조하고 있습니다.
아마도 freq [Global.iParameter [2] -1] = false;
모든 것을 초기화하려면 배열을 반복해야합니다.이 줄은 마지막 요소 만 초기화합니다.
실제로 Java의 부울에 대해 false가 기본값이라고 확신하므로 초기화 할 필요가 전혀 없습니다.
친애하는
Boolean
하고 있지 않으므로 boolean
기본적으로 null
.
false
기본적으로 로 초기화됩니다 . Java에서 배열은 힙에 생성되고 배열의 모든 요소에는 유형에 따라 기본값이 제공됩니다. 들어 boolean
데이터 기본 값이 입력합니다 false
.
Boolean
하고 있지 않으므로 boolean
기본적으로 null
.
public static Boolean freq [] = new Boolean [Global.iParameter [2]];
Global.iParameter [2] :
const 값이어야합니다.