public int scoreUp(String[] key, String[] answers) {
int score = 0;
for (int i = 0; i < key.length; i++) {
if (key[i] == answers[i])
score += 4;
else if (answers[i] != "?" && answers[i] != key[i])
score--;
}
return score;
}
Это работает на http://codingbat.com/prob/p180365, но он использует == для сравнения строк вместо метода equals? Как так?Как это вернуть правильный результат?
Это не ошибка компиляции ... – Tunaki
не должно быть ошибки компиляции - это просто не даст вам правильных результатов, потому что сравнивает ссылки (то есть указатели), а не сам контент – noamgot
Извините, я didn 't означает' compile '. Я имел в виду, как метод обрабатывает ввод и производит правильный вывод, если он сравнивает адреса объектов, а не строки? Вы можете проверить его самостоятельно, скопировать приведенный выше код и вставить его в ссылку, которую я предоставил. – Nico