济南网站建设,济南做网站,济南网站制作

今天关于if判断boolean类型的一个坑

java从业者 2017年07月10日 Java知识 5189 0

今天在写代码的时候,由于自己写的时候脑抽了,导致判断结果一直都是错的


下面是第一次写的代码:

package com.javazs.util;

public class TestBoolean {

 public static void main(String[] args) {

  boolean a= false;

  if(a=true){

   System.out.println("true");

  }

 }

}

这段代码执行,一直都是打印true的。


一开始郁闷了一下,换成了


package com.javazs.util;

public class TestBoolean {

 public static void main(String[] args) {

  boolean a= false;

  if(a){

   System.out.println("true");

  }

 }

}

发现没有打印任何东西了。然后判断条件换成!a ,就会打印出true。


然后再看我第一次写的代码,发现==号写成=号, 而在Java中,= 是赋值符号,就是在我的if() 里,


给a 赋值为true 了,而这个赋值成功返回的就是true ,所以一直都是打印true 的。


综上,我第一次的代码如果写成下面这样,也是没有问题的

package com.javazs.util;

public class TestBoolean {

 public static void main(String[] args) {

  boolean a= false;

  if(a==true){

   System.out.println("true");

  }

 }

}

哈哈,简单的东西都出了这样的坑,看来以后写代码都要仔细了。

关于boolean 的相关推荐


 Java中的boolean类型

 mybatis 中if标签判断boolean 的写法。  

eclipse中将普通项目转为maven项目
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Top