选择结构 if语句 switch语句
前言
初学java语言的小白,日常记录个人所学、所思、所感、所获。
请java语言行业的前辈们多多指教, 目前从事汽车制造行业。
属于零基础自学,愿未来自己感谢今天的选择和努力。加油!
一、流程概述与顺序结构
2021、8、20更新
笔记:
1.除了学习四则运算符的使用外,重点记忆取模运算符:%
2.不同数据之间的运算,结果将会是数据范围大的类型
/*
流程图
圆角矩形代表开始和结束
长方形代表步骤
顺序结构:从上到下,走到底
*/
public class Demo01Sequence {
public static void main(String[] args) {
System.out.println("今天天气不错");
System.out.println("挺风和日丽的");
System.out.println("我们下午没课");
System.out.println("这的确挺爽的");
}
}
二、选择结构 单if语句
2021、8、21更新
笔记:单if语句,满足判断条件,执行语句体,否则就结束。注意与if else语句的差异。
满足条件,才执行语句体
//单if语句
public class Demo02If {//定义了一个类名称
public static void main(String[] args) {//定义了一个方法名称
System.out.println("今天天气不错,正在压马路.....突然发现一个快乐的地方:网吧");//打印输出一段话
int age = 17;//定义一个变量age=17
if (age>=18){//设定一个条件
//语句体
System.out.println("进入网吧开始high");
System.out.println("遇到一群猪队友,开始骂街");
System.out.println("根绝不爽,结账走人");
}
System.out.println("回家吃饭");//打印输出
}
}
三、选择结构 标准if else语句
2021、8、21更新
笔记:
1.if else语句判断条件时是否成立,成立执行语句体1,否则执行语句体2。二者选其一
2.以下代码灵活运用了之前所学,注意%取模,以及==相等的运用
题目要求:
根据输入数值,判断奇偶性
//标准的if else语句
public class Demo03IfElse {
public static void main(String[] args) {
int num = 20;
if(num%2==0){//如果除以2余数为零,就是偶数,否则就是奇数
System.out.println(“偶数”);
}else{
System.out.println(“奇数”);
}
}
}
四、选择结构 拓展if else语句
***加粗样式**2021、8、21更新
笔记:
1.拓展的if else语句结构图如下。多者选其一。
2.注意在程序当中2x-1;是错误写法。正确写法是2x-1;
3.注意在程序当中-1<x<3;是错误写法。正确写法是-1<x&&x<3
/*
拓展if else 语句
多者选其一
题目要求
根据输入关系,求出y值
x和y的关系满足如下:
如果x>=3,那么y=2x+1;
如果-1<x<3,那么y=2x;
如果x<-1,那么y=2x-1;
/
public class Demo04IfElseExt {
public static void main(String[] args) {
int x=10;
int y;
if(x>=3){
// y=2x+1;是错误写法,程序当中不能连着写。正确写法如下。重点注意
y=2x+1;
//}else if(-1<x<3){ 错误写法,程序当中不能连着写。正确写法如下。重点注意
}else if(-1<x&&x<3){
y=2x;
}else{
y=2x-1;
}
System.out.println(“结果是:”+y);//21
}
}
五、练习 用if语句实现考试成绩
2021、8、21更新
笔记:
【重点注意】
1.注意等号= 与<的顺序位置,否则会报错 大于等于>=,小于等于<=,这是标准写法。
2.大于等于=>,小于等于=< 错误写法,程序报错
/*
题目要求如下:
根据考试成绩,判断成绩等级。
90-100 优秀
80-89 好
70-79 良
60-69 及格
60以下 不及格
*/
public class Demo05IfElsePractise {
public static void main(String[] args) {
int score=83;
//【重点注意】
//注意等号= 与<的顺序位置,否则会报错 大于等于>=,小于等于<=,这是标准写法。
// 大于等于=>,小于等于=< 错误写法,程序报错
if(90<=score&&score<=100){
//if(90=<score&&score=<100){//错误写法,程序报错
System.out.println(“你的成绩属于优秀”);
}else if(80<=score&&score<90){
System.out.println(“你的成绩属于好”);
}else if(70<=score&&score<80){
System.out.println(“你的成绩属于良”);
}else if(60<=score&&score<70){
System.out.println(“你的成绩属于及格”);
}else if(0<=score&&score<60){
System.out.println(“你的成绩属于不及格”);
}else{
System.out.println(“非法数值,请重新输入”);
}
}
}
}
六、练习 用if语句替代三元运算符
2021、8、21更新
笔记:
int max;要在if循环之前定义,否则会报错,注意。
//题目:
//使用三元运算符和标准if else语句分别实现,取两个数值当中的做大值。
public class Demo06Max {
public static void main(String[] args) {
int a=10;
int b=20;
int max;
//首先使用三元运算符
/*
int max=a>b?a:b;
System.out.println("最大值是"+max);
*/
//使用if else语句
//首先使用三元运算符
if(a>b){
max=a;
}else{
max=b;
}
System.out.println("最大值是"+max);
}
}
七、选择语句 标准switch语句
2021、8、21更新
笔记:
注意:case后面跟的数值与赋值有直接关系。
如以下代码:打印输出结果为星期一
int num=1;
switch (num){
case 1:
System.out.println(“星期一”);
break;
case 2:
System.out.println(“星期二”);
break;
如以下代码:将case2改成case1,打印输出结果就变成了星期二
int num=1;
switch (num){
case 2:
System.out.println(“星期一”);
break;
case 1:
System.out.println(“星期二”);
break;
public class Demo07Switch {
public static void main(String[] args) {
int num=1;
switch (num){
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
case 7:
System.out.println("星期天");
break;
default:
System.out.println("数据不合理");
break;
//最后一个break语句可以省略,但是强烈推荐不要省略
}
}
}
八、选择语句 穿透switch语句
2021、8、21更新
笔记:
思考:break表示终止程序,如果没有这个关键字,就会产生穿透效果
1.为什么case1有之间没有空格,程序报错,有空格程序就正常?
2.为什么case2…casen有没有空格都不报错?
如下图
/*
【注意事项】
1.多个case后面对的数值不可以重复
2.switch后面的小括号当中只能是下列数据类型:
基本数据类似byte/short/int/char
引用数据类型:String字符串,enum枚举
【重点】
3.switch语句格式可以很灵活,前后顺序可以颠倒。
而且break语句还能省略,但是强烈不推荐,会产生穿透
“满足匹配哪一个case就从哪一个位置向下执行,直到遇到break或者整体结束为止”
*/
public class Demo08SwitchNotice {
public static void main(String[] args) {
/*
//注释的代码实际是正确代码
int num=4;//你好
switch (num) {
case 1:
System.out.println("你好");
break;
case 2:
System.out.println("我好");
break;
case 3:
System.out.println("大家好");
break;
default:
System.out.println("他好,我也好");
break;
}
*/
//省略break,导致的穿透
int num=1;//你好 我好 //穿透效果
switch (num){
case 1:
System.out.println("你好");
case 2:
System.out.println("我好");
case3:
System.out.println("大家好");
break;
default:
System.out.println("他好,我也好");
break;
}
}
}
心得体会
2021、8、21更新
笔记:
本章节学习的if语句和switch语句运用比较广泛,注意理解其执行的思路,掌握相应的语法规则。一天浪费在游戏上的时间太多了,要向爱游戏一样爱学习。加油!明天会更好2021、8、21