Відповіді:
Мені просто потрібно ініціалізувати всі елементи масиву до булевих помилок.
Або boolean[]
замість цього використовуйте так, що всі значення за замовчуванням false
:
boolean[] array = new boolean[size];
Або використовуйте Arrays#fill()
для заповнення всього масиву Boolean.FALSE
:
Boolean[] array = new Boolean[size];
Arrays.fill(array, Boolean.FALSE);
Також зауважте, що індекс масиву заснований на нулі. freq[Global.iParameter[2]] = false;
Лінії , як ви були б викликати ArrayIndexOutOfBoundsException
. Щоб дізнатися більше про масиви на Java, ознайомтеся з цим базовим навчальним посібником Oracle .
Boolean[] array
оскільки це дозволяє мати три стани для кожного елемента: true
, false
і null
, що корисно в тих випадках , коли ви хочете , щоб відзначити , що що - то «не обробляється».
Масив буде ініціалізований на false, коли ви виділите його.
Усі масиви в Java ініціалізуються до значення за замовчуванням для типу. Це означає, що масиви ints ініціалізуються на 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 [] = новий булевий [Global.iParameter [2]];
Global.iParameter [2]:
Це має бути значення const