本文共 868 字,大约阅读时间需要 2 分钟。
if(条件){ 语句组;}
if(条件){ 语句组;}else{ 语句组;}
if(条件){ 语句组;}else if(条件){ 语句组;}......else if(条件){ 语句组;}else{ 语句组;}
switch(表达式){ case 表达式 : 语句组;[break;] case 表达式 : 语句组;[break;] …… case 表达式 : 语句组;[break;] [default : 语句组;]}
规则:先计算switch后表达式的值,该值如果与某个case后表达式的值一致,则执行该case后的语句组,如果后面有break,则退出switch语句;如果没有break。则继续执行后面所有语句组,直到遇到break或右大括号结束。
计算某日是该年的第几天?
这个案例很好地利用了switch的穿透性。首先要能判断出来,我们是根据月份来判断一共要加几个月的时间,知道这一点就能知道switch后面的表达式里面要写到的是month;然后必须从case 12 开始,依次倒着写,这样,如果说输入的日期是11月28号,那么case匹配到month是11,就跳过case 12,从case 11 开始,依次执行后面的每一条语句,也就会依次加上10月,9月,……,2月,一月的天数,这样就能得出总的时间;最后需要注意的是,用户输入的是12月,则加的前11个月的天数,然后再加上12的day数,用户输的是9月,则加的是前8个月的天数,然后加上9月的day数,……,依次……;如果用户输入的是1月,则直接加上一月份的day数就好了。
转载地址:http://nvqzi.baihongyu.com/