Java中的判断和循环
if语句
if属于一个判断语句,格式为:if(表达式){true要执行的代码},在这个格式中,()内的表达式的最终值必须是boolean类型,也就是true或false,当()里的值为true时,后面{}内的若干代码才会被执行。
注意:
- 一般不建议将判断的表达式放到()里面,建议将式子结果赋值给一个boolean类型的对象,将这个对象放到()里面。
- “=”是赋值符号,“==”才是比较符号。
代码示例:
//例子
int a = 1;
if(a==1) {
System.out.println("我执行了");
} // 控制台输出:我执行了,{}里面的语句被执行
if(a=1){ //这里会报错,a=1是一个赋值语句,并不是判断句
System.out.println("我执行了");
} //程序报错,()里面只能是boolean值,不能是int类型的值
if-else语句
语句结构:if(表达式){true要执行的代码}else{false要执行的代码}。
代码示例:
int result = 60;
if(result >= 60) {
System.out.println("成绩合格");//输出“成绩合格”
}else{
System.out.println("成绩不合格");
}
//“成绩合格"输出后,else就不会再看了,直接到后面这里了
if - else if -else语句
语句中的else部分是可选项,当if和else if 语句中()的值都是false时,相当于该语句什么都没有做。else if 可以多个,可根据实际情况增删。
switch语句
switch语句中,switch(表达式)部分,表达式在jdk1.7之前可以是byte、short、int、long;在jdk1.7之后,也支持String、boolean等类型。表达式中的值会与case上的值作比较,如果一致则执行该case部分语句。
代码示例:
String str1 = "周二";
switch(str1) {
case "周一","周二","周三","周四","周五" -> System.out.println("今天需要工作");
case "周六","周日" -> System.out.println("今天可以休息");
default -> System.out.println("没有这个星期");
}
// 输出结果是:今天需要工作
for循环与while循环的使用场景区别
for循环
- 当知道我们要循环的次数时,使用for循环
- for循环一般用于遍历数组、集合等
while循环
- 当不确定循环需要执行的次数,但是知道循环结束的条件,这个时候就选择while循环
循环控制:break、continue
- break和continue都是用来控制循环结构的,主要作用是停止循环
- break在循环体内和switch语句体内使用,continue只能在循环体内使用
- break可跳出一个循环体或者完全结束一个循环,不仅可以结束其所在的循环,还可结束其外层循环。
- continue是跳过本次循环体中剩下尚未执行的语句,立即进行下一次的循环条件判定,可理解为只是跳过本次循环,接着开始下一次循环。
小知识:return
return 是方法中返回值并结束方法的关键字,只要方法执行了次关键字,那么方法将直接被结束,如果是在循环中也不例外。方法中的return常常伴随if判断语句存在,如果return在循环内,满足条件时,也可起到一定的终止循环的作用。