java流程控制语句

1.顺序结构

绝大部分代码从上往下由左往右依次编译和执行

class JavaDemo{
public static void main(String[] args) {
System.out.println("欢迎来到英雄联盟!!!");
System.out.println("敌军还有30s到达战场");
System.out.println("全军出击");
System.out.println("FisrtBlood!!!");
System.out.println("Defeat!!!");
}
}

2.选择结构

if语句(提供三种格式的语句 范围)
if语句格式1(提供一个选项,可能有结果可能没结果)

if(判断条件){
语句体;
}

执行流程

首先进行判断,如果判断结果是true执行语句体,

语句体执行完毕if语句结束了。如果判断的结果是

false直接跳过if语句不执行。

在这里插入图片描述

class IfDemo1{
public static void main(String[] args) {
//衣服的价格
int price=1999;
//剩余的钱
int money=200;
//进行选择判断
//如果语句体只有一句话省略大括号不写
if(money>=price)
System.out.println("不差钱,买买买!!!");
//其他语句
System.out.println("家里失火了,回家。。。");
}
}

if语句格式2(提供一个选项返回一个结果)
if(判断条件){
语句体1;
}else{
语句体2;
}

执行流程
先去执行判断,如果判断结果为true执行语句体1,执行完语句体1if语句结束。
如果判断结果为false执行语句体2,执行完语句体2 if语句结束。
当if语句格式2有返回值时和三目等效转换

class IfDemo2{
public static void main(String[] args) {
//求两个整数最大值
int a=1;
int b=2;
//选择判断
if(a>b){
System.out.println(a);
}else{
System.out.println(b);
}
//求三个整数最大值
/*int a=1;
int b=5;
int c=2;
//选择判断
//if嵌套
if(a>b){
//进入这个判断说明a比b大
if(a>c){
System.out.println(a);
}else{
System.out.println(c);
}
}else{
//进入这个判断说明b比a大
if(b>c){
System.out.println(b);
}else{
System.out.println(c);
}
}*/
}
}

if语句格式3(提供多个选择只有一个返回结果)
if(判断条件1){
语句体1;
}else if(判断条件2){
语句体2;
}

else{
语句体n+1;
}
执行流程
执行判断条件1,如果是true执行语句体1执行完毕if语句结束了。如果是false执行判断条件2,如果是true执行语句体2执行完毕if语句结束了。如果是false按照上述操作继续往下执行直到所有的判断条件都是false执行else里的语句体n+1执行完毕if语句结束了。

测试数据:1.正确数据 2.边界数据 3.错误数据

import java.util.Scanner;
class IfDemo3{
public static void main(String[] args) {
//提供输入召唤师的星星数返回对应的段位
//获取星星数据
Scanner sc=new Scanner(System.in);
int xing=sc.nextInt();
//选择判断---返回对应的段位
if(xing>=0&&xing<=3){
System.out.println("倔强青铜");        
}else if(xing>3&&xing<=10){
System.out.println("不屈白银");
}else if(xing>10&&xing<=20){
System.out.println("荣耀黄金");
}else if(xing>=20&&xing<30){
System.out.println("华贵铂金");
}else if(xing>=30&&xing<90){
System.out.println("超凡大师");
}else if(xing>=90){
System.out.println("嘴强王者");
}else{//统一处理非正常数据
   System.out.println("亲,您输入数据有误!!!");
}
}
}

switch语句(列举值)
在这里插入图片描述
switch语句
格式
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
case 值3:
语句体3;
break;

default:
语句体n+1;
break;
}

执行流程

先去计算出表达式的值,和每个case值进行
比较,如果有相等的执行对应的语句体执行
break语句结束。如果没有相等的执行default里的语句体执行break语句结束。

注意:
1.case值是常量且不能重复
2.表达式值类型支持—byte、short、char、int,从jdk1.5开始支持枚举类型,从jdk1.7开始支持String类型
3.支持省略break,产生case穿透效果(输入月份返回对应的季节)
4.支持省略default(选择题)
5.结束条件(1.遇见break 2.执行到代码的最后)

import java.util.Scanner;
class SwitchDemo{
public static void main(String[] args) {
//输入整数返回对应的星期
//获取整数
Scanner sc=new Scanner(System.in);
int week=sc.nextInt();
//选择匹配
switch(week){
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;
}
}
}

3.循环结构

for循环、while循环、dowhile循环
在这里插入图片描述
for循环(循环范围确定)

格式

for(初始值;判断条件;控制条件){
循环体;
}

执行流程

先去计算出初始值,拿着初始值和判断条件进行比较如果为true执行循环体,执行控制条件改变初始值拿着改变的初始值和判断条件进行比较如果为true重复上述操作直到判断条件的结果值为false则循环结束。

class ForDemo{
public static void main(String[] args) {
//打印10遍helloworld
for(int i=1;i<=10;i++){
System.out.println("helloworld");
    }
}
}

*while循环(*循环范围不确定)

格式

初始值
while(判断条件){
循环体;
控制条件;
}

执行流程

先去计算出初始值,拿着初始值和判断条件进行比较如果

为true执行循环体,执行控制条件改变初始值拿着改变的初始值和判断条件进行比较如果为true重复上述操作直到判断条件的结果值为false则循环结束。

class WhileDemo{
public static void main(String[] args) {
//首付
int price=20000*30;
//存的钱
int leftMoney=0;//初始值
//统计数
int count=0;
//循环
while(leftMoney<price){
//每月存钱
leftMoney+=5500;//控制条件
count++;
}
System.out.println(count*1.0/12);
}
}

dowhile循环(最少执行一次)

格式

初始值
do{
循环体;
控制条件;
}while(判断条件);

执行流程

先去计算出初始值,执行循环体,执行控制
条件,拿着改变初始值和判断条件进行比较
如果为true执行循环体执行控制条件拿着改变的初始值和判断条件进行比较如果为true重复执行上述操作直到判断结果为false循环结束。

class DoWhileDemo{
public static void main(String[] args) {
//打印10遍Helloworld
int i=1;//初始值
do{
System.out.println("Helloworld");//循环体
i++;//控制条件
}while(i<=10);
}
}

三种循环的区别和联系

1.循环范围确定推荐for循环,循环范围不确定推荐while循环,最少执行一次推荐dowhile循环
2.三种循环可以等价转换
3.三种循环—死循环
4.for循环初始值后面不能使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值