java流程控制语句结构_Java语句与流程控制结构(一)

流程控制语句结构

流程语句控制结构分为:

1.顺序结构: 按顺序执行

2.分支结构:选择一个分支执行

3.循环结构:重复执行某个语句

一. 顺序结构

执行过程:从上往下执行

1. 输入/输出语句

1.1 输出语句

System.out.println("我是一条输出语句");

# 输出变量

int a = 1;

System.out.println(a);

1.2 输入语句

步骤:

准备Scanner类型变量

提示输入内容

接受输入内容

例子

// 1..准备Scanner类型变量

java.util.Scanner input = new java.util.Scanner(System.in); //System.in 代表从键盘输入

// 2.提示输入

System.out.print("输入整数吧: ");

// 3.接受输入内容

int num = input.nextInt()

//列出各种数据类型的输入

int num = input.nextInt();

long bigNum = input.nextLong();

double d = input.nextDouble();

boolean b = input.nextBoolean();

String s = input.next();

char c = input.next().charAt(0);//先按照字符串接收,然后再取字符串的第一个字符(下标为0)

2.分支结构

分支结构:按条件执行某个分支代码

分为:

# 1.条件表达式

if(条件表达式1){

block;}else{block;}

# 2. 选择结构

switch(常量值){

case 常量值1:

block;

break;

...

}

2.1 条件判断

2.1.1 单分支

语法格式

if(条件表达式){

block;

}

执行过程:如果条件表达式成立,则执行 {} 中代码块,否则不执行;

if(条件表达式)中的条件表达式的结果必须是boolean类型

如果单语句可以省略{},但是不建议

## 判断2月是否29天;

int year = 2019;

int days = 28;

if(year%4==0 && year%100!=0 || year%400==0){

days= 29;

}

2.1.2 双分支结构

语法格式:

if(条件表达式){

当条件表达式成立(true)时需要执行的语句块1;

}else{

当条件表达式不成立(false)时需要执行的语句块2;

}

执行过程:如果条件表达式成立,则执行 {} 中代码块,否则执行else{}里面代码块;

if(条件表达式)中的条件表达式的结果必须是boolean类型

如果单语句可以省略{},但是不建议

# 判断奇偶数

int num = 10;

if(num%2==0){

System.out.println(num + "是偶数");

}else{

System.out.println(num + "是奇数");

}

2.1.3 多分支结构

语法格式

if(条件表达式1){

当条件表达式1成立的时候,执行的语句块1;

}else if(条件表达式2){

当条件表达式1不成立,

条件表达式2成立的时候,执行的语句块2;

}else if(条件表达式3){

当条件表达式1不成立,

条件表达式2也不成立,

条件表达式3成立的时候,执行的语句块3;

}

。。。

【else{

当以上所有的条件表达式都不成立,需要执行的语句块n+1;

}】

执行过程:

(1)多个条件顺序往下判断,如果上面有一个条件成立了,下面的条件就不看了

(2)多个分支也只会执行其中的一个

注意:

(1)每一个条件表达式都必须是boolean值

(2)当{}中只有一个语句时,也可以省略{},但不建议省略

(3)当多个条件是“互斥”关系(没有重叠部分),顺序可以随意;

当多个条件是“包含”关系(有重叠部分),顺序不能随意,小的在上,大的在下面

int score = 78;

if(score==100){

System.out.println("满分");

}else if(score>=80){

System.out.println("优秀");

}else if(score>=60){

System.out.println("及格");

}else{

System.out.println("不及格");

}

2.1.4 if嵌套

执行过程:

​ 当嵌套在if中,就是当外面的if成立时,才会看里面的条件判断;

​ 当嵌套在else中,就当外面的else满足时,才会看里面的条件判断;

3 选择结构

语法格式;

switch(表达式){

case 常量值1:

语句块1;

【break;】

case 常量值2:

语句块2;

【break;】

。。。

【default:

语句块n+1;

【break;】

}

执行过程:

(1)入口

①当switch(表达式)的值与case后面的某个常量值匹配,就从这个case进入;

②当switch(表达式)的值与case后面的所有常量值都不匹配,寻找default分支进入;

(2)一旦从“入口”进入switch,就会顺序往下执行,直到遇到“出口”

(3)出口

①自然出口:遇到了switch的结束}

②中断出口:遇到了break等

注意:

(1)switch(表达式)的值的类型,只能是:4种基本数据类型(byte,short,int,char),两种引用数据类型(枚举、String)

(2)case后面必须是常量值,而且不能重复

int month = 4;

switch(month){

case 3:

case 4:

case 5:

System.out.println("春季");

break;

case 6:

case 7:

case 8:

System.out.println("夏季");

break;

case 9:

case 10:

case 11:

System.out.println("秋季");

break;

case 12:

case 1:

case 2:

System.out.println("冬季");

break;

default:

System.out.println("输入有误!");

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值