Я создаю булевский массив, предварительно заполненный ложными значениями. Я понимаю, что мне не нужно объявлять ложные значения, поскольку они автоматически назначаются, однако я пытался использовать разные методы, чтобы попытаться решить проблему.Java boolean array, создающий экземпляр как null
package com.bignerdranch.android.geoquiz;
import android.app.ActionBar;
import android.content.Intent;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
public class QuizActivity extends ActionBarActivity {
private static final String TAG = "QuizActivity";
private static final String KEY_INDEX = "index";
private Button mTrueButton;
private Button mFalseButton;
private Button mNextButton;
private Button mCheatButton;
private TextView mQuestionTextView;
private TrueFalse[] mQuestionBank = new TrueFalse[] {
new TrueFalse(R.string.question_oceans, true),
new TrueFalse(R.string.question_mideast, false),
new TrueFalse(R.string.question_africa, false),
new TrueFalse(R.string.question_americas, true),
new TrueFalse(R.string.question_asia, true),
};
private int mCurrentIndex = 0;
private boolean mIsCheater;
private boolean[] mCheatedAnswers = new boolean[] {false, false, false, false, false};
У меня есть точки останова на последней строке, и когда программа разбивает здесь mCheatedAnswers конкретизируется в нуль. Я не понимаю, почему, поскольку я дал ему логический массив - кто-нибудь знает, почему это может быть?
Предыдущие переменные имеют правильные значения, назначенные им, когда я проверяю их в режиме отладки.
Ahh спасибо. Да, я только объявил ложным, что не заявлял, что они, похоже, не работали в то время. Хорошее предложение изменить класс - я не думал об этом – algorhythm