【发布时间】:2012-09-13 03:58:21
【问题描述】:
语言是Java。 鉴于此:
public static void main(String[] args) {
Boolean b1 = true;
Boolean b2 = true;
int i1 = 1;
if (b1 = true) //line 5
if (b1 == true} // line 6
我知道b1 == true 是一个等效的测试,它会给出结果:真或假。但是,对于 b1 = true ,据我了解是一个声明,除了在这种情况下,它应该什么都不返回:b1 = true 返回 true,与 == 测试完全相同?
你能解释一下为什么吗?谢谢!
【问题讨论】:
-
b1 = true是赋值而非声明。Boolean b1;是一个声明。 -
你确定是编译错误吗?因为这些东西(未使用的变量)在 eclipse 中显示为 warnings。