大数据JAVA基础第四天

1.switch由一个控制表达式和多个case标签组成,和if语句不同的是,switch控制语句后面的表达式只能是byte,short,int,char四种数值类型,或者是枚举和String类型(jdk 1.7才开始支持),不能是boolean类型。

执行流程,先对条件表达式进行求值,然后依次匹配各个条件,如果和条件相符,就执行对应case内的语句,如果所有的case都不匹配的话,那么执行default中的语句。

switch中case语句的控制范围比较清晰,所以case要执行的语句完全可以不用{},这点和if语句不同。   

2.jdk 1.7 开始支持String类型的表达式匹配

class TestSwitch2{

    public static void main(String[] args) {

       String season = "SPRING";

       switch(season){

           case "SPRING":

              System.out.println("春天");

              //break;

           case "SUMMER":

              System.out.println("夏天");

              break;

           case "AUTUMN":

              System.out.println("秋天");

              break;

           case "WINTER":

              System.out.println("冬天");

              break;

           default:

              System.out.println("输入有误");

              break;

       }

    }

}

3.总结:

    当某些case没有break语句的时候,程序从条件表达式中的值和第一个匹配到的case语句开始执行,一直执行到遇到break或者最后。

    case相当于一个switch的执行入口。

    break想当于switch的出口,如果一直没有出口的话,一直执行到switch结束。

4.总结

1.根据变量的值,选择相应的case去判断,一旦满足case条件,就执行case的相应语句。如果没有break或者已经到结尾的话,会继续执行其下的case语句。

2.default:是可选的,而且位置是灵活的。

3.变量可以是哪些类型?char byte short int 枚举 String(jdk1.7)

4.case 条件:其中条件只能是值,不能是取值范围!

class TestSwitch1 {

    public static void main(String[] args) {

       int i = 2;

       switch(i){

           case 0:

              System.out.println("zero");

              break;

           case 1:

              System.out.println("one");

               break;

           case 2:

              System.out.println("two");

              break;

           case 3:

              System.out.println("three");

              break;

           default:

              System.out.println("other");

              break;

       }

5.总结

1.当多个case语句处理的语句块一致时,可以统一来书写

2.一定情况下switch-case与if-else之间可以相互转换。

 

6.

            

7.循环结构

循环语句功能

在某些条件满足的情况下,反复执行特定代码的功能,需要在某些特定时间把循环的条件改成false来结束循环,否则将是死循环

循环语句的四个组成部分

  • 初始化部分(init_statement)对一些变量进行初始化
  • 循环条件部分(test_exp) 条件为true执行循环,条件为false不执行循环
  • 循环体部分(body_statement) 条件为true时执行的语句
  • 迭代部分(alter_statement)需要更改其值的变量

8.循环语句分类

  • for 循环
  • while 循环
  • do/while 循环

9.for循环

              

 

10.输出所有的水仙花数,所谓水仙花数是指一个3位数,其各个位上数字立方和等于其本身。

例如: 153 = 1*1*1 + 3*3*3 + 5*5*5

class ShuiXianHua{

    public static void main(String[] args) {

      

       for(int i = 100;i < 1000;i++){//实现100-999的遍历  456 - 400 = 56 - 50

           int j1 = i / 100;//百位

           int j2 = (i - j1*100)/10;//十位 j2 = i/10%10;

           int j3 = i % 10;//个位

 

           if(i == j1*j1*j1 + j2*j2*j2 + j3*j3*j3){

               System.out.println(i);

           }

       }

    }

}

11.for循环和while循环的差异

如果想要在循环体之外访问循环控制的变量的话,需要使用while循环,因为while循环的变量定义是在while循环体之外的;反之,当不需要在循环之外访问循环控制变量的话,就使用for循环

原文地址:https://www.cnblogs.com/xiejiajun/p/6575037.html