JAVA基础之选择语句和循环语句

程序基本结构

1.1 顺序结构

程序从上到下一行一行的执行代码,没有判断和中转。

1.2 选择结构

有选择性的执行或者跳过指定代码

1.3 循环结构

​ 重复执行一段代码,直到条件不成立。

​ Java的选择结构使用选择语句来实现:

1 if语句

2 switch语句

if语句

if语句有四种使用形式:

  • if(条件){…}
  • if(条件){…}else{…}
  • if(条件){…}else if(条件){…}else{…}
  • if(条件){ if(条件){…} } else {…}
特殊的if语句(不推荐使用)

必须要求 if 或者 else 语句中只能有一条语句
if(score>60)
System.out.println(“有奖励”);
else
System.out.println(“啥都没有”);

switch语句

switch只适合做等值判断。

语法结构:

switch(表达式){

​	case 常量1:

​		代码块1;

​		break;

​	case 常量2 :

​		代码块2;

​		break;

​	case 常量3 : 
​		代码块3;
​		break;

​	...

​	default:

​		默认代码块;

​		break;
}

switch语法规则:

  1. 表达式expr的值必须是下述几种类型之一:

​ byte、short、int、char、enum(枚举);java7之后可以是String。

  1. case子句中的值const 必须是常量值(或final的变量),case中的值不能是一个范围
  2. 所有case子句中的值应是不同的,否则会编译出错;
  3. default子句是可选的(不是必须的)
  4. break语句用来在执行完一个case分支后使程序跳出switch语句块;否则会继续执行下去
    特殊用法 :case穿透
    case穿透:由于某个case语句中缺少或者漏写break语句所导致的结果。
循环语句
  1. while 循环
  2. do/while 循环
  3. for循环

while循环

while (循环条件) {语句块(循环体)}

先判断循环条件表达式的值。若为true.则执行循环体,然后再次判断条件并反复执行,直到条件不成立为止。
特点:先判断再执行

do-while循环

do {语句块} while(条件表达式) ;

先执行语句,再判断表达式的值,若为true,再执行语句,否则结束循环。
特点:先执行,再判断

while 和 do-while的区别
1 执行过程不同

​ while 先执行循环条件,然后再执行循环体,一句话:先判断,再执行

​ do/while 先执行循环体 然后再执行循环条件,一句话:先执行,再判断

2 当第一次不满足循环条件的情况下 while循环不能执行循环体, do while 可以执行一次

for循环

for (表达式1 [循环变量初始化]; 表达式2 [循环条件判断]; 表达式3 [更新循环变量]){
循环体

首先计算表达式1,接着计算表达式2,若表达式2的值为true,则执行循环体,接着计算表达式3,再判断表达式2的值.依此重复下去,直到表达式2的值为false。
特点:先判断,再执行

for(int i = 0;i<3;i++){
	System.out.println("Hello World!");
}

打印100以内 能被4整除不到能被7整除的数据,每行打印6个

int count = 0;
for(int i = 1; i<=100; i++){
	if(i%4==0 && i%7!=0){
		System.out.print(i+"\t");
		count++;// 6 
		if(count%6==0){
			System.out.print("\n");
		}		
	}
}

for循环的特殊形式

  1. 省略表达式2 表达式2一般不可省略,否则为无限循环(死循环)

    for (int i=1; ; i++) sum=sum+i;
    // 相当于条件永真、永不为false

  2. 表达式3亦可省略,但在循环体中须有语句修改循环变量;以使表达式2在某一时刻为false而正常结束循环。

    for (int sum=0,i=1 ;i<=100; ){
    sum=sum+i;
    i++;
    }

  3. 若同时省略表达式1和表达式3,则相当于while(表达式2)语句

    int i=0;
    for ( ; i<=100; ) {sum+=i; i++;}

  4. 三个表达式均省略 即for(;;)语句,此时相当于while(true)语句.

跳转语句–流程控制语句

break: 语句用于终止某个语句块的执行

  • 使用场合
    • switch结构中:跳出(终止)switch语句
    • 循环结构中:跳出(终止)循环
  • 作用:退出switch和循环结构(如果有多重循环,默认跳出离自己最近的循环)
  • 使用Lable标签实现跳出指定的循环

continue: 语句用于跳过某个循环语句块的一次执行,继续下一次执行(结束本次循环,继续下一次循环)

  • 使用场合
    • continue只能用在循环结构中
  • 作用: 跳过本次循环,执行下一次循环(如果有多重循环,默认继续执行离自己最近的循环)。)
  • 使用Label标签改变继续执行的循环
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值