第三篇 黑马程序员-条件判断语句

------- android培训java培训、期待与您交流! ---------- 

一.
顺序结构,如下代码所示:
package circulate;

public class IfDemo {
 public static void main(String[] args)
 {
  System.out.println("Hello World");
  System.out.println("Hello World");
  System.out.println("Hello World");
  System.out.println("Hello World");
 }
}
二.
注意:
如果if控制的语句只有一条,那么"{ "可以不写.
if...else语句和三元运算符的区别(代码演示):
三元运算符:
int a = 9,b;
b=(a>1)?100:200;
用if...else表达就是:
if(a>1)
  b=100;
else
  b=200;
小结:这里写成三元运算符更加简便。
像下面的代码是不能写成三元运算符的:
int x = 1;
  if (x > 1)
  {

   System.out.println("yes");
  }
  else
  {
   
   System.out.println("a");

  }
如果写成三元运算符就是:b=(x>1)?System.out.println("yes"):System.out.println("a");
这样子那肯定不行,因为System.out.println("yes")是直接打印到屏幕上的。
三.
if...else结构的简写格式:变量=(条件表达式)?表达式1:表达式2;
if...else的代码演示:
    int n=3;
  
  if(n>1)
   System.out.println("a");
  else if(n>2)
   System.out.println("b");
  else if(n>2)
   System.out.println("c");
  else
   System.out.println("d");
  
 }
以上代码打印结果为a,因为当n=3时执行第一个语句时满足了,他就不会往后执行了,所以打印结果为a.
三元运算符的特点:可以简化if...else代码,弊端就是因为是一个运算符,所以
运算完必须要有一个结果。
以下代码中 if(n>1)
               System.out.println("a");和
                                           if(n>2)
                                              System.out.println("b");是独立的。
  if(n>1)
   System.out.println("a");
  if(n>2)
   System.out.println("b");
  if(n>3)
   System.out.println("c");
  else
   System.out.println("d");
练习:根据用户指定的月份,打印该月份所属的季节
分析:
//3,4,5春   6,7,8夏   9,10,11秋  12,1,2东
  int x = 4;
  
  if(x==3||x==4||x==5)
     System.out.println("春季");
  else if(x==6||x==7||x==8)
   System.out.println("夏季");
  else if(x==9||x==10||x==11)
   System.out.println("秋季");
  else if(x==12||x==1||x==2)
   System.out.println("冬季");
  else
   System.out.println("月份不存在");
   
 }
如果if(x==3||x==4||x==5)中的(x==3||x==4||x==5)可以表示为(x>=3&&x<=5),
那么else if(x==12||x==1||x==2)中的(x==12||x==1||x==2)怎样这样表示呢?
方法是把1-12以外的数全部判断出来,然后我再判断1-12里面的数:
  if(x>12||x<1)
   System.out.println("月份不存在");
     else if(x>=3&&x<=5)
       System.out.println("春季");
     else if(x>=6&&x<=8)
       System.out.println("夏季");
     else if(x>=9&&x<=11)
       System.out.println("秋季");
     else
       System.out.println("冬季"); 
  
 }
四.
switch语句
格式:
    switch(表达式)
    {
      case 取值1:
       执行语句;
      break;
     
       case 取值2:
       执行语句;
        break;
       .....
        default:
         执行语句;
         break;
      }
当case不对的话,他就往下执行,如果判断所有的都不对的话,那就是默认即执行default:
                                   执行语句;
                                   break;
特点:
1.switch语句选择的类型只有四种:byte,short,int,char.
2.case之间与default没有顺序,先执行第一个case,没有匹配的case执行default.
3.结束switch语句的两种情况:遇到break,执行到switch语句结束
4.如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的
语句,直到遇到break或者switch的结尾结束。
小结:
if和switch语句很像,具体什么场景下应用哪个语句呢?如果判断的具体数值不多,而是符合byte
short int ,char这四种类型,虽然两个语句都可以使用,建议使用switch语句,因为
效率稍高,其他情况,对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广

 

------- android培训java培训、期待与您交流! ----------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值