一、学习内容
1.逻辑运算符
2.短路逻辑运算符
3.三元运算符
3.流程控制语句分类
- 顺序结构
- 1.2.顺序结构是最简单的流程控制语句,没有特定的写法,代码的执行顺序是从上往下进行。
- 分支结构(if,Switch)
- 2.1 if
if(关系表达式){
语句体;
}
1.首先判断关系表达式的结果是true或false</br>
2.如果是true 就执行语句体</br>
3.如果是flase就不执行语句体
-
2.2 switch
switch(表达式){
case 1:
System.out.print();
break;
case 2:
System.out.print();
break;
------------
default:
System.out.print();
break;
}
执行流程:
1.首先计算出表达式的值
2.将值与case一次比较,一旦有对应的值,就执行该case的语句,执行过程中遇到break则结束该流程。
3.最后,如果所有的case都和表达式的值不匹配,则执行default语句提部分,然后程序结束。
3. 循环结构(for,while,do..while)
- 3.1 for
for(初始化语句;条件判断语句;条件控制语句){
循环体;
}
执行流程:
1.执行初始化语句
2.执行条件判断语句,结果为true继续执行,结果为flase循环结束。
3.执行循环体语句。
4.执行条控制语句。
5.返回执行“ 条件判断语句”过程继续
示例
int count=0;
for (int i=1;i<=5;i++){
++count;
System.out.print("i的值为:"+i);
}
System.out.print("统计次数:"+count);
输出结果为:
i的值为:1
i的值为:2
i的值为:3
i的值为:4
i的值为:5
统计次数:5
----------------
使用for循环 在控制台输出所有的"水仙花数"
/**
* 水仙花代码
* 水仙花是一组三位数的数值,求出水仙花的方法是用水仙花的个位立方+十位立方+百位立方的和等于这个水仙花的数值
* 也就是在100-999之间
* 例如:371水仙花
* 三位数 求得个位 通过用"%" 取余 1 371%10=1;
* 三位数 求十位 通过"/10" 取商 37 再通过"%" 取得余数为7 371/10%10=7;
* 三位数 求百位 通过整除100 取商 3 371/100=3;
*/
int ge = 0; //个位数变量
int shi = 0; //十位数变量
int bai = 0; //百位数变量
for (int i = 100; i <= 999; i++) {
ge = i % 10;
shi = i / 10 % 10;
bai = i / 100;
if ((ge * ge * ge + shi * shi * shi + bai * bai * bai) == i) {
System.out.println("水仙花数为:" + i);
}
}
程序运行结果为:
水仙花数为:153
水仙花数为:370
水仙花数为:371
水仙花数为:407
- 3.2 while
初始化语句;
while(判断条件语句){
循环体语句;
条件控制语句;
}
执行流程
1.执行初始化语句
2.执行条件判断语句,结果是true 继续执行,结果是false 循环结束
3.执行循环体语句。
4.执行条件控制语句
5.返回 "条件判断语句"继续执行
示例
int num=1;
while(num<=5){
System.out.println("执行次数:"+num);
num++;
}
输出结果:
执行次数为:5
- 3.3 do..while
初始化语句;
do{
循环体语句;
条件控制语句;
}
while(判断条件语句);
执行流程:
1.执行初始化语句
2.执行循环体语句
3.执行条件控制语句
4.执行条件判断语句,如果结果是true,则继续执行!如果结果是false,则循环结束
5.结果为true,则回到流程2执行循环体 一直往下执行,直到结果为false跳出循环。
6.特别需要注意的是 要在while()结尾处加上";" 分号。
4.循环嵌套
/**
* 在控制台输出一天的小时和分钟,
* 公式:
* 分钟 0<=minute<60
* 小时 0<hour<24
*/
for ( int hour=0;hour<=24;hour++){
for (int minute=0;minute<=60;minute++){
System.out.println(hour+"小时"+minute+"分钟");
}
System.out.println("---------------");
}