2 qq 36055101 qq_36055101 于 2016.09.25 16:14 提问

看代码的时候 看见一个判断语句出现这样的代码?

if(suc=="true") 是表示把 true 这个值赋给 suc吗?还是别的

5个回答

sinat_29398599
sinat_29398599   2016.09.25 16:32
已采纳

这个写法没有问题,不过返回的一定是false.
这个不是复制给suc , “ == ” 一般是用来做逻辑判断的。 “ = ”一般用来复制
if 括号里一般是 boolean类型的值,只有满足这个条件才执行接下来的语句。
而你的if里的内容,suc是字符串,字符串比较相等时,一般用“true".equals(suc), 判断suc中的对象是否是 “true”。
而你这里 用suc == "true"来判断,实际他们比较的是他们在【内存空间中指向的地址】,而不是值,所以返回的一定是false。

sinat_29398599
sinat_29398599 回复R0bot: 你想的很周到哦!不过题主问是否是赋值,那应该suc是个变量,不是常量。
大约一年之前 回复
qq_36055101
qq_36055101 回复R0bot: suc= $.getParamsByGet(window.location.href,"success"); suc是这个 , 至于getParamsByGet这个也是一个方法 对于小白来说 ,好哦复杂
大约一年之前 回复
Ro_bot
Ro_bot 如果是java语言的话,由于常量池的关系,结果可能为true。题主没有给出代码,无法判断上下文关系,所以不能确定。
大约一年之前 回复
qq_29594393
qq_29594393   Ds   Rxr 2016.09.25 16:22

判断suc的值是否为true ,一个= 表示赋值 ,两个表示判断是否等于,相等返回true ,不相等返回false
这个写法有点问题
if(true==!!suc)

weixin_36236792
weixin_36236792   2016.09.25 16:27

表示suc是否等于字符串true

fo1_sky
fo1_sky   2016.09.25 16:28

suc本身也应该是一个字符串,判断suc是不是等于“true”, 另外, suc类型应该是std::string, 才能判断正确。

zlt995768025
zlt995768025   2016.09.25 16:42

一个 = 是赋值,两个 == 是等于,这里是指判断suc是否等于true。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!