现在这是一个非常愚蠢的问题,我无法解决。
我有String address="someurl/id/"
。我有另一个String newAddress="someurl/"+id+"/"
。
现在我执行
if(address.equals(newAddress))
情况并非如此。有人可以告诉我,我在这里做错了什么吗?
编辑:我从共享首选项获取id,所以它绝对是一个整数。这是我的日志 07-02 21:34:49.556 4098-4185/com.parkwheels V/destAdress﹕ http://ovunque.in/api/v1/users/25/
07-02 21:34:49.556 4098-4185/com.parkwheels V/putAddress﹕ http://ovunque.in/api/v1/users/25/
答案 0 :(得分:6)
在第一种情况下,您使用值“id”,在第二种情况下,无论id变量包含哪个值。因此,除非id ==“id”,否则两个字符串不相等。
答案 1 :(得分:4)
好吧,除非变量id
是包含值“id”的String,否则字符串不相等。
例如,如果id
是int
,其值为300,则String newAddress="someurl/"+id+"/"
的值为"someurl/300/"
,不等于"someurl/id/"
。< / p>
答案 2 :(得分:1)
尝试打印出newAddress并查看它的外观?你的id变量是双倍的吗?如果只是25,可能会把25.0放在那里。