可能重复:
如何比较 Java 中的字符串?
if
我不明白为什么sendMessage中的第一个(其他相同)永远不会成真。接收者字符串正是它应该是真实的?!
当我运行它并按发送给 Alice时,我得到 3 个 Toast:
- 发送给 Alice(=接收者的值)
- [空白吐司](= phoneNumber 的值)
您必须选择一条消息(=没关系!)
public void onSend(View src){ Button b = (Button)src; sendMessage(b.getText().toString()); } public void sendMessage(String reciever){ String phoneNumber = ""; Toast.makeText(this, reciever, Toast.LENGTH_LONG).show(); if (reciever == "Send to Alice"){ phoneNumber = "01230340645"; Toast.makeText(this, "hej", Toast.LENGTH_LONG).show(); } else if (reciever == "Send to Bob"){ phoneNumber = "020312039"; } else if (reciever == "Send to John"){ phoneNumber = "0102308013"; } Toast.makeText(this, phoneNumber, Toast.LENGTH_LONG).show(); if (_message == ""){ Toast.makeText(this, "You have to choose a message!", Toast.LENGTH_LONG).show(); } else { Intent sms = new Intent(Intent.ACTION_SENDTO, Uri.parse("sms:" + phoneNumber)); sms.putExtra("sms_body", _message); startActivity(sms); _message = ""; } }