java switch语句-for循环讲解

switch语句:

switch(表达式){
case值1:
语句体1;
break;
case值2:
语句体2;
break;
default:
语句体n+1;
break;
}
格式说明:
1.表达式取值为byte,short,int,char,JDK5以后可以是枚举,JDK7以后可以是字符串(String)
2.case:后面跟的是要和表达式进行比较的值
3.语句体:这个部分可以是一条或者多条语句
4.break:表示中断,结束的意思,可以控制switch语句的结束
5.default:当所有的值都和表达式不匹配的时候,就执行default控制的语句。其实他就相当于if语句的else

 // 创建键盘录入
        Scanner sc = new Scanner(System.in);
        //接收到键盘录入的整数类值
        System.out.println("请输入星期数阿拉伯:");
        int number = sc.nextInt();
        switch (number){
            case 1://如果number 的值等于 case 值的话就打印下面的输出语句 然后退出 switch
                System.out.println("星期一");
                break;
            case 2:
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;

switch语句春夏秋冬

需求:一年有12个月,分属于春夏秋冬4个季节,键盘录入一个月份,请用程序实现判断该月份属于哪个季节,并输出。
春:3、4、5
夏:6、7、8
秋:9、10、11
冬:1、2、12
多个case后面的值不可以重复,重复则编译报错。

//        春:3、4、5
//        夏:6、7、8
//        秋:9、10、11
//        冬:1、2、12
        // 创建键盘录入
        Scanner sc = new Scanner(System.in);
        //接收到键盘录入的整数类值
        System.out.println("请输入季节数字:");
        int number = sc.nextInt();
        switch (number){
            case 1:
                System.out.println("冬天");
                break;
            case 2:
                System.out.println("冬天");
                break;
            case 3:
                System.out.println("春天");
                break;
            case 4:
                System.out.println("春天");
                break;
            case 5:
                System.out.println("春天");
                break;
            case 6:
                System.out.println("夏天");
                break;
            case 7:
                System.out.println("夏天");
                break;
            case 8:
                System.out.println("夏天");
                break;
            case 9:
                System.out.println("秋天");
                break;
            case 10:
                System.out.println("秋天");
                break;
            case 11:
                System.out.println("秋天");
                break;
            case 12:
                System.out.println("冬天");
                break;

代码优化

//        春:3、4、5
//        夏:6、7、8
//        秋:9、10、11
//        冬:1、2、12
        // 创建键盘录入
        Scanner sc = new Scanner(System.in);
        //接收到键盘录入的整数类值
        System.out.println("请输入季节数字:");
        int number = sc.nextInt();
        switch (number){
            case 1:
            case 2:
            case 12:
                System.out.println("冬天");
                break;
            case 3:
            case 4:
            case 5:
                System.out.println("春天");
                break;
            case 6:
            case 7:
            case 8:
                System.out.println("夏天");
                break;
            case 9:
            case 10:
            case 11:
                System.out.println("秋天");
                break;

循环语句1- for

循环结构的组成:
初始化语句:用于表达循环开启时的起始状态,简中说就是循环开始时候什么样
条件判断语句:用于表示循环反复执行的条件,简单说就是判断循环是否能一直执行下去循环体语句:用丁表示循环反复执行的内容,简单说就是循环反复执行的事情
条件控制语句:用于表示循环执行中每次变化的内容,简单说就是控制循环是否能执行下去
循环结构对应的语法:
初始化语句:这里可以是一条或多条语句,这些语句可以完成一些初始化操作
条件判断语句:
这里使用一个结果值为boolean类型的表达式,这个表达式能决定是否执行循环体。例如:a<3
循环体语句:这里可以是任意语句,这些语句将反复执行
条件控制语句:这里通常是使用一条语句来改变变量的值,从而达到控制循环是否继续向下执行的效果。常见的i+t,i-这样的操作。

for循环语句格式

for循环语句格式:
for(初始化语句;条件判断语句;条件控制语句){
循环休语句;}
执行流程:
1.执行初始化语句
2.执行条件判断语句,看其结果是true还是false如果是false,循环结束
如果是true,继续执行
3.执行循环体语句
4.执行条件控制语句
5.回到2过程继续

现在打印 5 次的 2022java switch语句-for循环讲解_第1张图片

代码很重复 所以现在使用到for循环一行代码解决

   //for循环语句格式:
  //for(初始化语句;条件判断语句;条件控制语句){
 //循环休语句;}
        for(int i = 1;i<=5;i++){
        //int i = 1; 初始化语句
        //i<=5; 条件判断 判断i是否小于等于5 true 就打印循环体语句 false就结束循环
        //i++ 条件控制语句   进行加1操作 循环一次加1 然后进行判断
            System.out.println(2022);
        }

输出数据

需求:在控制台输出1-5和5-1数据分析:
1.反复进行输出动作,使用循环结构
for(初始化语句;条件判断语句;条件控制语句){
循环体语句;}
2.从1开始到5结束,设置初始化从i=1开始for (int i=l;条件判断语句;条件控制语句){
循环体语句;}
3.从1开始到5结束,设置条件判断语句i<=5 for (int i=1;i<=5;条件控制语句)
{
循环体语句;}
4.从1到5,每次增加设置条件控制每次+1 for ( int i=1;i<-5; i++)
{
循环体语句;}
5.循环体中打印对应的数据
for (int i=1; i<=5;条件控制语句){
System.out.println(" i"+i)}

需求:在控制台输出1-5

   //打印1-5数据
        //第一次 i = 1
        //第二次 i = 1 + 1
        //第三次 i = 2 + 1
        //第四次 i = 3 + 1
        //第五次 i = 4 + 1
        // i 的值小于等于 5 就会打印出 i的值
        for(int i = 1;i<=5;i++){
            System.out.println("I:"+i);
        }

需求:在控制台输出5-1

 //打印5-1数据
        //第一次 i = 5
        //第二次 i = 5 - 1
        //第三次 i = 4 - 1
        //第四次 i = 3 - 1
        //第五次 i = 2 - 1
        // i 的值大于等于 1 就会打印出 i的值
        for(int i = 5;i>=1;i--){
            System.out.println("I:"+i);
        }

求和

需求:求1-5之间的数据和,并且将求和的结果在控制台输出分析:
1、求和的最终结果必须保存起来,需要定义一个int类型变量
sum,用于保存求和的结果,初始值为0
int sum=0;
2、从1开始到10结束的数据,使用循环结构完成
for(int i =1 ; i<-5;i++){
}
3、将反复进行的事情写入循环结构内部,此处反复进行的事情是将数据i加到用于保存最终求和的变量sum中
for(int i =l ; i<=5;i++){sum+1=1;
}
4、当循环执行完毕时,将最终数据打印出来

        System.out.println("求1-5的总和");
        int sum = 0;// 定义一个变量int 类型
        for(int i = 1;i<=5;i++){
            sum+=i; //sum = sum + i
        }
        System.out.println("sum = "+sum);
        }

求和偶数和

1、对1-10的数据求和与1-5的数据求和几乎完全一样,仅仅是结束条件不同
2、对1-10的偶数求和,需要对求和操作添加限制条件
3、限制条件是偶数才参与运算,因此条件应该是判断是否是偶数

        System.out.println("求0-10的偶数之和");
        int sum = 0;//初始值=0
        for(int i = 0;i<=10;i++){
            if(i%2==0){ //if判断i这数是否对2取余等于0如果等于0那么这个数一定是偶数 进行记录
                sum+=i; // sum = sum + i 
            }
        }
        System.out.println("sum = "+sum);

水仙花

需求:在控制台输出所有的“水仙花数”
什么是水仙花数就是三位数,但是不是全部的三位数都是水仙花数。100-999之间
水仙花数的个位的立方+十位的立方+百位的立方=这个水仙花数例如:
100的个位0十位0百位1=O*(O+0OO+111=1不是水仙花数371的个位7十位1百位3=111+777++33*3水仙花数
三位数的个位数如何求:
371%10=1;
三位数的十位数如何求:
371通过除以10得到结果=37371/10=372.37通过对10取余可以得到余数为7 37%10=73.综合371/10%10=7;
三位数的百位数如何求:371/100=3;

            //打印水仙花数
            for(int i = 100;i<=999;i++){
            int ge = i%10;//得到个位数
            int shi = i/10%10;//得到十位数
            int bai = i/100; // 得到百位数
            if(ge*ge*ge + shi*shi*shi + bai*bai*bai == i){//进行判断 三位数的立方乘积是否等于i
                System.out.println("水仙花数 : "+i);
            }
        }

你可能感兴趣的:(java基础,java,后端)