前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java编程基础阶段笔记 day04 Java基础语法(下)

Java编程基础阶段笔记 day04 Java基础语法(下)

原创
作者头像
浮想
修改2019-08-01 10:28:24
6460
修改2019-08-01 10:28:24
举报

switch-case语句注意

  • switch-case题目(switchTest5)
  • 循环执行顺序
  • if-else 实现3个整数排序
  • String字符串比较
  • 循环四要素
  • 打印九九乘法表
  • 特殊关键字continue、break
  • switch(表达式) 表达式里仅支持 byte、short、char、int、枚举、String(jdk1.7后)

switch(表达式){         case 常量1:             执行语句1;             break;         case 常量2:             执行语句2;             break;         ......         default:             执行语句n;             break;         }

  • case 后面只能跟常量,default是可选的。如果都没有匹配成功则执行default中的执行语句。default的位置是灵活的。
  • switch-case和if-else可以替换,switch-case效率高一些

/* 从键盘分别输入年、月、日,判断这一天是当年的第几天    注:判断一年是否是闰年的标准:        1)可以被4整除,但不可被100整除     或        2)可以被400整除 */ import java.util.Scanner; public class SwitchTest5{     public static void main(String[] args){         //1.读取数据         Scanner sc = new Scanner(System.in);         System.out.println("请输入年份");         int year = sc.nextInt();         System.out.println("请输入月份");         int month = sc.nextInt();         System.out.println("请输入日期");         int day = sc.nextInt();         int sumDay = 0; //用来统计当年的总天数         //2.统计天数         switch(month){         case 4:             sumDay += 31;         case 3:             //判断当年是否是闰年             if((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)){                 sumDay += 29;             }else{                 sumDay += 28;             }         case 2:             sumDay  += 31;         case 1:             sumDay += day;         }         //3.输出         System.out.println(year + "年" + month + "月" + day + "日是当年的第" + sumDay + "天");     } } /*     编写程序:由键盘输入三个整数分别存入变量num1、num2、num3,     对它们进行排序(使用 if-else if-else),并且从小到大输出。 */ import java.util.Scanner; public class IfTest {     public static void main(String[] args){         Scanner sc = new Scanner(System.in);         System.out.println("请输入三个数字");         int num1,num2,num3;         num1 = sc.nextInt();         num2 = sc.nextInt();         num3 = sc.nextInt();         if(num1>num2){             if(num3>num1){//num3最大                 System.out.println("小到大:"+ num2 +" "+ num1 +" "+ num3);             }else if(num3<num2){//num3最小                 System.out.print("小到大:"+ num3 + " " + num2 + " " + num1);             }else{                 System.out.println("小到大:"+ num2 + " " + num3 + " " + num1);             }         }else{//num1<num2             if(num3>num2){//num3最大                 System.out.println("小到大:"+ num1 + " "+ num2 + " "+ num3);             }else if(num3<num1){//num2最大                 System.out.println("小到大:"+ num3 + " " + num1 + " " + num2);             }else{                 System.out.println("小到大:"+ num1 + " " + num3 + " " + num2);             }         }     } }

  • String字符串比较

String str = new String("帅");         //判断帅不帅         System.out.println("帅" ==  str); //这样不能比字符串的内容         boolean handsome = "帅".equals(str); //比较的是字符串的内容 - 如果内容相同返回true否则返回false

  • switch使用小技巧

对学生成绩大于60分的,输出“合格”。低于60分的,输出“不合格” switch(score / 60){         case 0:             System.out.println("不合格");             break;         case 1:             System.out.println("合格");             break;

  • 编写程序:输入月,日,输出第几天

/* 4. 编写程序:从键盘上输入2019年的“month”和“day”,要求通过程序输出输入的日期为2019年的第几天。 */ import java.util.Scanner; public class SwitchTest4{     public static void main(String[] args){         //1.读取数据         Scanner sc = new Scanner(System.in);         System.out.println("请输入月份");         int month = sc.nextInt();         System.out.println("请输入日期");         int day = sc.nextInt();         int sumDay = 0; //用来统计当年的总天数         //2.统计天数         switch(month){         /*         case 1:             sumDay = day;             break;         case 2:             sumDay = day + 31;             break;         case 3:             sumDay = day + 31 + 28;             break;         case 4:             sumDay = day + 31 + 28 + 31;             break;         */         case 4:             sumDay += 31;         case 3:             sumDay += 28; //赋值和+=完全不一样。sumDay += 28 : 除了sumDay原来的天数再额外加上28         case 2:             sumDay  += 31; // sumDay = sumDay + 31         case 1:             sumDay += day;         }         //3.输出         System.out.println("2019年" + month + "月" + day + "日是当年的第" + sumDay + "天");     } }

  • 编写程序:输入年,月,日,输出第几天

/* 从键盘分别输入年、月、日,判断这一天是当年的第几天    注:判断一年是否是闰年的标准:        1)可以被4整除,但不可被100整除     或        2)可以被400整除 */ import java.util.Scanner; public class SwitchTest4 {     public static void main(String[] args){         Scanner sc = new Scanner(System.in);         System.out.println("请输入年份:");         int year = sc.nextInt();         System.out.println("请输入月份:");         int month = sc.nextInt();         System.out.println("请输入天数:");         int day = sc.nextInt();         int sumDay = 0;         switch(month){             case 12:                 sumDay += 30;             case 11:                 sumDay += 31;             case 10:                 sumDay += 30;             case 9:                 sumDay += 31;             case 8:                 sumDay += 31;             case 7:                 sumDay += 30;             case 6:                 sumDay += 31;             case 5:                 sumDay += 30;             case 4:                 sumDay += 31;             case 3:                 // 28或 29                 if((year%4==0&&year%100!=0)||year % 400 ==0){//闰年                     sumDay += 29;                 }else{                     sumDay += 28;                 }             case 2:                 sumDay += 31;             case 1:                 sumDay += day;                 break;         }         System.out.println(year+"年" + month + "月" + day + "日是当年的第" + sumDay + "天");     } }

  • 循环四要素

循环的四个部分:         1.初始化条件         2.循环条件         3.循环体         4.迭代条件

  • 打印九九乘法表

/* 1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 打印九九乘法表 */ public class c99 {     public static void main(String[] args){         int i,j;         for(i=1;i<=9;i++){//9行             for(j=1;j<=i;j++){                 System.out.print(j + "*" +i+" = "+ i*j +" ");             }             System.out.println();         }     } }

  • 特殊关键字continue、break
    • break用于 switch-case语句与循环结构中,表示结束当前case语句,结束循环语句
    • continue,用于 循环结构  表示结束当此循环。
    • 在嵌套循环中break结束的包含该语句的循环语句,对外层循环无作用
    • 在嵌套循环中continue跳出的是包含他的循环语句的当次循环,不跳出
  • 嵌套循环中如何使用内部循环的break结束外层循环

可以给循环命名,break + 循环名字 总结Summary

  • if-else实现三个整数排序
  • 打印九九乘法表
  • break,continue使用注意事项

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档