我有一个for循环,我想找到一封电子邮件。我必须使用相同的字符串。在for循环中我放了一个吐司,我看到两个都显示相同的东西没有任何空格。 if(String == String)中的内容根本不会发生。 这是代码:
try {
jArray = new JSONArray(result);
JSONObject json_email = null;
for(int i=0;i<=jArray.length();i++){
json_email = jArray.getJSONObject(i);
addedby2 = json_email.getString("email");
if(addedby2==email2){
Toast.makeText(this, json_email.toString(), Toast.LENGTH_LONG).show();
user = json_email.getString("user");
rpoints = json_email.getString("respectpoints");
//Toast.makeText(this, user+" "+rpoints, Toast.LENGTH_LONG).show();
}
}
tvAdded.setText(user + " (" + rpoints + ")");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
我也尝试在if条件之外使用getString(“user”)并且它有效。 我试着写if条件:String.equals(String)但没有任何结果。
有谁知道这个问题是什么?
答案 0 :(得分:0)
如果您使用Java,要比较字符串值,您必须使用equals()函数。就像霍华德所说,如果这不起作用,那么你的变量可能是错误的。