持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第2天,点击查看活动详情
基本if 语句
1.1 if条件分支语句
其中,if中的表达式应该为布尔表达式。这里会存在三种不同选择。(假设在if中会有数据的处理)
第一,只使用if语句,这相当于我只过滤我想要的数据;
第二:if...else 语句,不管进入if或者else分支,总会给我返回一个数据;
第三:if…else if…else 语句,这就是多条件分支判断。也会给我返回一个数据,但可能需要进行几层分支的判断。
闰年的计算
2.1 思路整理:何为闰年?
(1)非世纪年(不能被100整除的年份)能被4整除且不能被100整除的年份为闰年
(2)世纪年 能被400整除的才是闰年
文中给出两种计算闰年的方法,结合day3的if语句,第一种把所有逻辑判断放在一个if中完成,但第二种方法就比较巧妙,多用一个else if 则可以巧妙简化第一种里面一大串逻辑判断。
/**
* method1
* @param paraYear 年份
* @return boolean
*/
public static boolean isLeapYear(int paraYear) {
if ((paraYear % 4 == 0) && (paraYear % 100 == 0) || (paraYear % 400 == 0) ) {
return true;
}else {
return false;
}
}
/**
* method2
* @param paraYear
* @return boolean
*/
public static boolean isLeapYearV2(int paraYear) {
if (paraYear % 4 != 0) {
return false;
}else if (paraYear % 400 != 0) {
return false;
}else {
return true;
}
}
基本switch 语句
3.1 switch也属于条件分支语句 switch中表达式的值去和case后的值做匹配,若匹配正确则执行其后需要执行代码,遇到break结束执行。若没有case匹配,则最后就会执行default,default 分支不需要 break 语句
3.2 思考1 每一个case后都要跟break吗?答案是否定的。不加break的话将会跳转到相应的case去执行且其以下的所有语句。
3.3 思考2 switch和if条件语句有什么区别呢?最明显差异是表示执行的结构,if中的表达式结果只能是boolean类型,而switch恰恰相反,他表示式结果可以是int,char等。我在实际使用过程中if语句用的比较多,但涉及到判断的if分支较多时,我会考率使用switch,这样效率会高一点。
总结
-
条件分支语句:if...else 语句;switch case 语句;结合闰年计算 综合运用if,elseif, else
-
循环语句:for循环,常见的单层,双重,三层循环举例