条件结构

xiaoxiao2021-02-28  60

简单if、else语句属于条件分支语句(用于只有两种情况的时候) if (cash >= 500) {     System.out.println("买别墅"); } else {     System.out.println("买公寓"); } ==》》》》》》》》》》》》》》》》》》》》 多重if、else语句用于多种情况的时候。 if (cash > 500) {     System.out.println("买在内环"); } else if (cash > 300) {     System.out.println("买在中环"); } else if (cash > 200) {     System.out.println("买在外环"); } else {     System.out.println("努力赚钱"); } switch、case语句     switch (表达式) {         case 常量1:             语句1;             break;         case 常量2:             语句2;             break;         default:             语句3;     } 注意:     a.switch是用来匹配常量的,能匹配的常量类型有byte、short、int、char、String、枚举类型     b.表达式的值为整型数,不能为long型;     c.break语句是可以省略的,一旦省略了,程序就会一直往下执行,直到碰到break为止或switch结束为止.通常是需要的;     d.default可选,可以放在任何位置,一般推荐放在最后;     e.case后面所列出的常量不能重复,case的顺序是可以颠倒的;     f.switch和多重if、else语句比较         switch语句适合做等值判断,不适合做区间判断。做等值判断的时候语法更简洁直观。多重if、else语句功能比switch更全面. ============================================================================================================= 万年历案例 public class Demo { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("****万年历****"); int year; // 保存输入的年 int month; // 保存输入的月 boolean isRn; // 闰年为true,否则为false int days = 0; // 保存指定月的天数 int totalDays = 0; // 保存总的天数差 System.out.println("请输入年:"); year = input.nextInt(); System.out.println("请输入月:"); month = input.nextInt(); if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0)) { isRn = true; System.out.println(year + "是闰年"); } else { isRn = false; System.out.println(year + "不是闰年"); } // 计算年的总天数 for (int i = 1900; i < year; i++) { if ((i % 400 == 0)||(i % 4 == 0 && i % 100 != 0)) { totalDays += 366; } else { totalDays += 365; } } // 计算输入月份之前的天数和 for (int i = 1; i <= month; i++) { switch (i) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: days = 31; break; case 2: if (isRn) { days = 29; } else { days = 28; } case 4: case 6: case 9: case 11: days = 30; break; default: System.err.println("输入月份有误"); break; } if (i != month) { totalDays += days; } }  // 求出是星期几,其实就是前面的\t的个数 int beforeDays; beforeDays = totalDays % 7 - 1; if (beforeDays == 7) { // 代表是星期天,0个\t beforeDays = 0; } System.out.println("星期天\t星期一\t星期二\t星期三\t星期四\t星期五\t星期六"); for (int i = 0; i < beforeDays; i++) { System.out.print("\t"); } for (int i = 1; i <= days; i++) { System.out.print(i + "\t"); if ((i + beforeDays) % 7 == 0) { System.out.println(); } } input.close(); } } 结果: ****万年历**** 请输入年: 2018 请输入月: 4 2018不是闰年 日 一 二 三 四 五 六 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30   break语法及使用 break语句可以用来改变程序的控制流,在switch/case语句中用于跳出swicth代码块,在循环语句中,用于跳出当前循环而执行后面的语句。 continue语法及使用 continue语句用于跳过循环体中剩余语句而提前执行下一次循环.
转载请注明原文地址: https://www.6miu.com/read-2630998.html

最新回复(0)