Как использовать мой оператор if / else в цикле for с массивами? - PullRequest
0 голосов
/ 30 августа 2018

У меня есть код, который сравнивает ввод пользователя с EditText с правильным переводом (String[] answers). Теперь я написал заявление if/else, но я пытаюсь поместить его в цикл for. В противном случае мне нужно написать более 30 заявлений. просто с несколькими разными номерами.

Теперь у меня есть следующая «база»:

for(int i = 0; i < answers.length; i++){

        if (Uinput[].equals(answers[])) {
            edit1.setBackgroundColor(Color.parseColor("#00FF00"));
        } else {
            edit1.setBackgroundColor(Color.parseColor("#FF0000"));
        }
    }

Что мне нужно поместить в квадратные скобки ([]), так как это не допустит пустых значений, и дальнейших рекомендаций или изменений? Заранее спасибо.

Пример кода того, что я сейчас использую:

private String[] answers = {"daylight", "task"};

private EditText edit1;

this.edit1 = findViewById(R.id.edit1);

String Uinput[] = {edit1.getText().toString()};

//        Comparison 1
        if (Uinput[0].equals(answers[0])) {
            edit1.setBackgroundColor(Color.parseColor("#00FF00"));
        }
        else {
            edit1.setBackgroundColor(Color.parseColor("#FF0000"));
        }

Ответы [ 2 ]

0 голосов
/ 30 августа 2018

Вы должны заключить меня в квадратные скобки

for(int i = 0; i < answers.length; i++){
        if (Uinput[i].equals(answers[i])) { // USE i in the brackets
            edit1.setBackgroundColor(Color.parseColor("#00FF00"));
        } else {
            edit1.setBackgroundColor(Color.parseColor("#FF0000"));
        }
    }
0 голосов
/ 30 августа 2018

Вам не нужен цикл. Вы можете просто использовать Arrays.asList например

if (Arrays.asList(answers).contains(edit1.getText().toString())) {
    edit1.setBackgroundColor(Color.parseColor("#00FF00"));
} else {
    edit1.setBackgroundColor(Color.parseColor("#FF0000"));
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...