程序的执行顺序:
顺序执行 每一段代码都会执行到
选择结构 只有满足条件的代码才会执行
如何确定【是否】满足条件 boolean
1.先明确是否应该使用选择结构(有代码在一定条件下才执行)
2.找到判断条件 找到满足条件要执行的内容
3.先写出标准的语法结构 再填充内容
if(判断条件){
当判断条件为真时 执行的代码块
}
判断语文 数学是否都及格
皆大欢喜
抄代码
判断语文 数学是否有一个及格
判断语文是否大于90分 或者数学是否大于90
语文>85 数学>95 或者 语文>95 数学>85
if(判断条件){
条件为真时执行的代码
}else{
条件为假时执行的代码
}
if永远在选择语法的第一个出现 可以单独存在
else if 可有可无 可以有无数个
else不能单独出现 可以没有 有的话只能有一个 放在最后面
练习:
1.判断用户输入的数字是否是1-7 不是的话则提示输入有误
2.用户输入数字 如果7则休息 否则学习
选择嵌套:
1.嵌套进去的一定是一个完整的模块
2.一定是嵌套在一种情况中(一对大括号中)
3.写外部代码不考虑内部结构 写内部代码时也不要考虑外部结构
String B.equals(A) 判断变量B中的值 是不是和变量A里面的值相同
例题:
编程的成绩
>=90 奖励笔记本
>=80 奖励手机
>=60 奖励MP3
<60 抄代码
练习:
询问用户有多少money
200 宝马
50 凯迪
10 BYD
0.5 自行车
else 走路
&&注意:
使用if语句实现多区间判断时,要将最难满足的区间放在最前面,优先判断。
做等值判断,无所谓顺序。
判断语文 数学是否都及格 勉强过关
判断语文是否大于90分 或者数学是否大于90
语文>85 数学>95 或者 语文>95 数学>85
练习:
1.客户中心
1.修改信息
1.修改姓名
2.修改密码
2.展示信息
2.商品中心
1.展示商品
2.添加商品
3.结算中心
1.展示购买的商品
2.清单
三元运算符
变量 = 判断条件?值1:值2;
System.out.println(“请输入用时”);
double time = input.nextDouble();
System.out.println(“请输入性别”);
char gender = input.next().charAt(0);
String result = time<10? gender==’男’?”进入男子组决赛”:”进入女子组决赛” :”遗憾失败”;
switch选择结构
switch(要判断的变量){
case 值1:
当变量等于值1时 执行的代码;
break;
case 值2:
当变量等于值2时 执行的代码;
break;
default:
其余情况执行的代码
}
if(){
}else if(){
}else{
}
注意:每个情况结束后都要添加break跳出整个switch 否则会不经过判断直接向下执行 一直到遇见break或者执行结束
default代表其他情况 和所有的case同样 不需要放置顺序 只有放在最后的情况可以省略break
可以使用的类型:byte short int char String enum(枚举类)
if和switch引用场景
所有的选择情况都可以使用if结构 switch用于等值判断 一般用于菜单项选择
100分 送电脑 90以上 送手机 80以上送自行车 60以上 送滑板 60以下 抄代码
将一些有特点的区间判断 转换为等值判断
分支结构:
if结构 switch结构 ?:
循环结构
while(判断条件){
循环体
可以使判断条件不成立的代码
}
解题思路:
判断是否有重复执行的动作 决定是否采用循环
初始值 判断条件 循环体 可以使条件不成立的因素
练习:
打印100遍 好好学习
输出 “第1遍好好学习” “第2遍好好学习” “第100遍好好学习”。。。
练习:
考试通过与否y/n来决定是否继续学习 学习完继续参加考试 直到通过考试
char isNo ='n';
while(isNo=='n'){
继续学习
考试 再次询问是否通过
isNo = input.next().charAt(0);
}
do{
}while();
while循环 和 do..while循环
while:先判断 再执行 有可能一次都不执行
do...while:先执行 后判断 至少执行一次
这两个循环结构 可以互相替换