欢迎光临,了解微信小程序开发,就上易用通!

【后端】java基础(3.1)java基础进阶之判断

发布:2018-01-24 16:05浏览: 来源:网络 作者:tianshu

看到这章,那么你已经掌握了java的基本的语法,现在可以来做点稍微高级的事情啦。判断,是编程的最基本的逻辑,因此本章我们来讲一讲java的条件判断。
在java中,最常用的条件判断无非是if判断语句,我们的if语句又有三种格式

  • 第一种的格式是:
    if(条件){
    要执行的语句
    }
    代码如下:
    
    		
    1. int a = 1;
    2. int b = 2;
    3. if(a+b==3){
    4. System.out.println("a+b等于3");
    5. }
    这段代码运行的结果是a+b等于3,因为a+b运算结果为3,这个结果刚好等于3为true,因此程序进入了判断的方法体内,执行了输出语句。如果我们把b的值改为1:
    
    		
    1. int a = 1;
    2. int b = 1;
    3. if(a+b==3){
    4. System.out.println("a+b等于3");
    5. }
    运行结果是什么也没有,那就说明方法体没有被进入,输出语句没有执行。
  • 第二种的格式是: if(条件){ 要执行的语句 }else{ 要执行的语句 } 代码如下:
    
    		
    1. int a = 1;
    2. int b = 1;
    3. if(a+b==3){
    4. System.out.println("a+b等于3");
    5. }else{
    6. System.out.println("a+b不等于3");
    7. }
    这段代码运行的结果是a+b不等于3,因为判断条件a+b=3的结果是false,所以执行了else下的内容。
  • 第三种格式是: if(条件){ 要执行的语句 }else if(){ 要执行的语句 }else if(){ 要执行的语句 }… 代码如下:
    
    		
    1. int a = 1;
    2. int b = 0;
    3. if(a+b==3){
    4. System.out.println("a+b等于3");
    5. }else if(a+b==2){
    6. System.out.println("a+b等于2");
    7. }else if(a+b==1){
    8. System.out.println("a+b等于1");
    9. }
    这段代码的执行结果是a+b等于1,由此可以看出这种格式的判断是符合哪个条件就会执行下面的方法别的就不去执行了。当然,为了方便那种不符合任何条件的判断,我们可以在最末尾加上一个else{执行的内容},如果前面所有的条件都不符合,则执行else下的内容。

除了if语句,我们的判断还有switch语句,格式如下: switch (条件) { case 值1: 要执行的内容 break; case 值2: 要执行的内容 break; … default: 要执行的内容 break; } 代码如下:


  1. int a = 1;
  2. int b = 2;
  3.  
  4. switch (a+b) {
  5. case 3:
  6. System.out.println("a+b等于3");
  7. break;
  8. case 2:
  9. System.out.println("a+b等于2");
  10. break;
  11. case 1:
  12. System.out.println("a+b等于1");
  13. default:
  14. System.out.println("都不是");
  15. break;
  16. }

这段代码执行的结果是a+b等于3,我们目前可以手动改变ab的值来决定结果。 switch的执行效率要比if else执行的效率高。因此我们可以用在已知有固定结果的条件下进行判断,代替if else,最后一个default是在没有找到想要的值的时候执行的内容,是不是跟if else的逻辑非常像?另外,程序中的break;可不能少,这个break的作用是执行了想要的语句之后跳出循环,若没有break,会继续执行紧挨着的下一个case下的内容一直到遇到break或者到循环末尾。

三目运算: 格式为: 条件?结果为true是时执行:结果为fasle时执行 代码如下:


  1. int a = 1;
  2. int b = 2;
  3. int c = a>b?a:b;
  4. System.out.println(c);

这段代码的执行结果为2,它的意思是先判断a是否大于b,如果a大于b就把a的值赋给c,反之,就把b的值赋给c。 三目运算本质上也是一种判断并且的执行效率也比if else高,在一定的条件下可以代替if else语句。





免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。