if(pb=true)
这句本来就不该这么写 a == b这种格式返回的是一个boolean型的值。 a = b这个是赋值。你看你的pb = true这句话的意思就是给pb赋值true。if(condition)这种格式if后面的括号里面的值或者是一段代码的结果需要是一个boolean型的值。
我用个简单的例子表示一下:
第一种情况:boolean bool = false;
if (bool) {
System.out.println("Hello World");
}//代码不会打印出Hello World
if (bool = true) { //这里bool 已经是true
System.out.println("Hello World");
}//代码会打印出Hello World
第二种情况:boolean bool = true;
这样的话结果就没有差别。
if(pb=true)是永真的
= 是赋值
== 是判断
if 判断true和false
所以,搞清楚 = 和== 的区别