if:
if...else:
多重if:
嵌套if:
switch:
表达式只能包含整数类型的表达式和枚举类型
1、 switch 后面小括号中表达式的值必须是整型或字符型
2、 case 后面的值可以是常量数值,如 1、2;也可以是一个常量表达式,如 2+2 ;但不能是变量或带有变量的表达式,如 a * 2
3、 case 匹配后,执行匹配块里的程序代码,如果没有遇见 break 会继续执行下一个的 case 块的内容,直到遇到 break 语句或者 switch 语句块结束
4、 可以把功能相同的 case 语句合并起来
5、 default 块可以出现在任意位置,也可以省略
如果今天是星期一、三、五,则早餐吃包子,如果是星期二、四、六,则早餐吃油条,如果是星期日,则吃“主席套餐”
public class HelloWorld { public static void main(String[] args) { char today='日'; switch(today){ case '一': case '三': case '五': System.out.println("早餐吃包子"); break; case '二': case '四': case '六': System.out.println("早餐吃油条"); break; default: System.out.println("吃主席套餐"); }
while:
有些时候为了完成任务,需要重复的进行某些动作
Java 常用的 3 种循环: while 、 do...while 、 for
< 1 >、 判断 while 后面的条件是否成立( true / false )
< 2 >、 当条件成立时,执行循环内的操作代码 ,然后重复执行< 1 >、< 2 >, 直到循环条件不成立为止
特点:先判断,后执行
do....while:
do...while 循环与 while 循环语法有些类似,但执行过程差别比较大
<1>、 先执行一遍循环操作,然后判断循环条件是否成立
<2>、 如果条件成立,继续执行< 1 > 、< 2 >,直到循环条件不成立为止
特点: 先执行,后判断
由此可见,do...while 语句保证循环至少被执行一次!
for:
for(循环变量初始化;循环条件;循环变量变化){循环操作}
<1>、 执行循环变量初始化部分,设置循环的初始状态,此部分在整个循环中只执行一次
<2>、 进行循环条件的判断,如果条件为 true ,则执行循环体内代码;如果为 false ,则直接退出循环
<3>、 执行循环变量变化部分,改变循环变量的值,以便进行下一次条件判断
<4>、 依次重新执行< 2 >、< 3 >、< 4 >,直到退出循环
特点:相比 while 和 do...while 语句结构更加简洁易读
1、 for 关键字后面括号中的三个表达式必须用 “;” 隔开,三个表达式都可以省略,但 “;” 不能省略。
a. 省略“循环变量初始化”,可以在 for 语句之前由赋值语句进行变量初始化操作
b. 省略“循环条件”,可能会造成循环将一直执行下去,也就是我们常说的“死循环”现象
c. 省略“循环变量变化”,可以在循环体中进行循环变量的变化
2、 for 循环变量初始化和循环变量变化部分,可以是使用 “,” 同时初始化或改变多个循环变量的值
for(int i=1;j=5;i<=5;i++,j--){}
3、 循环条件部分可以使用逻辑运算符组合的表达式,表示复杂判断条件,但一定注意运算的优先级
for(int i=1;i<10 && i!=5;i++){}
多重循环:
循环体中包含循环语句的结构称为多重循环。三种循环语句可以自身嵌套,也可以相互嵌套,最常见的就是二重循环。在二重循环中,外层循环每执行一次,内层循环要执行一圈。
public class HelloWorld { public static void main(String[] args) { System.out.println("打印直角三角形"); // 外层循环控制行数 for (int i = 1; i<4;i++) { // 内层循环控制每行的*号数 // 内层循环变量的最大值和外层循环变量的值相等 for (int j = 1; j<=i;j++) { System.out.print("*"); } // 每打印完一行后进行换行 System.out.println(); } } }
public class HelloWorld{
public static void main(String[] args){
int num = 999;
int count = 0;
do
{
count++;
num=num/10;
}
while(num >0);
System.out.println("它是个" + count + "位的数!");
}
}