【发布时间】:2016-08-06 08:03:14
【问题描述】:
我是应用程序开发的新手,在 android studio 中编码时遇到问题。我想将输入文本与字符串数组中的字符串进行比较。由于某种原因,它不起作用。当我在 Eclipse 中尝试 java 代码时,它可以工作。
我已经运行调试器并且输入消息是“香蕉”。调试器还在 CheckAnswer(message) 中显示 message = "Banana"。但由于某种原因,该函数没有返回“Right”。它返回“错误”
我希望有人可以帮助我。
这是我的代码:
public void sendMessage(View view) {
// Do something in response to button
Intent intent = new Intent(this, DisplayMessageActivity.class);
EditText editText = (EditText) findViewById(R.id.edit_message);
String message = editText.getText().toString();
intent.putExtra(EXTRA_MESSAGE, message);
String message2 = CheckAnswer(message);
intent.putExtra(CORRECT_MESSAGE, message2);
startActivity(intent);
}
public static String CheckAnswer(String string) {
String rightanswer[] = {"Apple", "Banana", "Coconut"};
String answer = null;
for (int i = 0; i <= rightanswer.length-1; i++) {
if (string == rightanswer[i]) {
answer = "Right!!";
break;
}
else answer = "Wrong.";
}
return answer;
}
【问题讨论】:
-
为什么不直接返回
true或false而不是对错?
标签: java android arrays android-studio android-edittext