I have strings stored in SQLite database which are shown in an Activity. the problem is if I compare the text of the button with a string value it returns false while equals show it matches. I am curious to know who it is returning false while they are both the same.
I have tried and tostring methods.
while (result.moveToNext()) {
 Button btn = new Button(this);
 btn.setWidth(100);
 btn.setHeight(40);
 //    btn.setSingleLine(); //keep text in single line don't break big words
 //    btn.setAutoSizeTextTypeUniformWithConfiguration(1, 15, 1,
 //          TypedValue.COMPLEX_UNIT_DIP);
 messageReceived = result.getString(1).trim();
 btn.setText(result.getString(1).trim());
 String btnText = btn.getText().toString().trim();
 String Value = Boolean.toString(btnText == messageReceived);
 Toast toast = Toast.makeText(this, Value, Toast.LENGTH_LONG);
 toast.setGravity(Gravity.CENTER, 5, 5);
 toast.show();
 if (messageReceived.equals(btnText)) {
  Toast toast2 = Toast.makeText(this, "matched", Toast.LENGTH_LONG);
  toast2.setGravity(Gravity.LEFT, 0, 0);
  toast2.show();
 } else {
  Toast toast2 = Toast.makeText(this, "Not Matched", Toast.LENGTH_LONG);
  toast2.setGravity(Gravity.LEFT, 0, 0);
  toast2.show();
 }
 Toast.makeText(this, "A: " + btn.getText() + " B: " + messageReceived, Toast.LENGTH_LONG).show();
 btn.setOnClickListener(this);
 grid.addView(btn);
 //messageReceived="pungi";
 if (btnText == messageReceived) {
  btn.setBackgroundColor(Color.YELLOW);
 }
}

 
     
     
     
     
    