Java入门基础:浅显易懂 while

文章目录


前言

在开发过程中不管是 while 语句还是其他语句都会经常用到布尔表达式,所以在学习 while 之前需要先明白什么是布尔表达式?


一、布尔表达式

布尔表达式只有2种结果:true / false

看看以下简单示例结果是否与你想的结果一致:

布尔表达式 中文 结果
10 == 10 10等于10吗? true
10 % 2 == 0 10对2取余等于0吗?10是偶数,对2取余当然等于0 true
10 % 2 != 0 10对2取余不等于0吗?10是偶数,对2取余当然等于0,怎么可能不等于0 false
10 > 10 10大于10吗? false
10 < 10 10小于10吗? false
10 != 10 10不等于10吗? false
10 == 20 10等于20吗? false
10 > 20 10大于20吗? false
10 < 20 10小于20吗? true
10 != 20 10不等于20吗? true

二、while

while属于3种循环语句中的一种,如果有相同的事情需要重复做,就可以使用循环语句

java 复制代码
3种循环语句:
	1、for
	2、while 
	3、do...while

三、语法

java 复制代码
	while(布尔表达式){
		循环体;
	}

	执行流程:
	1、执行布尔表达式
		1.1 如果布尔表达式为true:
			1.1.1 执行循环体
			1.1.2 回到第1步重新开始下一轮循环,如此往复,直到布尔表达式为false为止
		1.2 如果布尔表达式为false:循环结束

四、示例

java 复制代码
	/*
	* 想快速理解while循环最好自己debug运行一下,一步一步调试看程序的执行流程,变量的变化,和下面的执行流程进行对照
	* 执行流程:
	*      1、初始化参数 int sum = 0; int index = 1;
	*      2、执行布尔表达式 index <= 3,index值为1,1确实小于等于3,布尔表达式为true
	*      3、执行循环体 sum += index,这时sum的值为0,index值为1,所以是 sum = 0 + 1,这时sum的值为1
	*      4、执行循环体 index++ 这时index的值为2
	*      5、执行布尔表达式 index <= 3,index值为2,2确实小于等于3,布尔表达式为true
	*      6、执行循环体 sum += index,这时sum的值为1,index值为2,所以是 sum = 1 + 2,这时sum的值为3
	*      7、执行循环体 index++ 这时index的值为3
	*      8、执行布尔表达式 index <= 3,index值为3,3确实小于等于3,布尔表达式为true
	*      9、执行循环体 sum += index,这时sum的值为3,index值为3,所以是 sum = 3 + 3,这时sum的值为6
	*      10、执行循环体 index++ 这时index的值为4
	*      11、执行布尔表达式 index <= 3,index值为4,4不小于等于3,布尔表达式为false
	*      12、循环结束
	*/
	int sum = 0;
	int index = 1;
	while (index <= 3){
		sum += index;
		index++;
	}
	System.out.println("1-3累加的和为 = " + sum);
相关推荐
i220818 Faiz Ul7 分钟前
药店管理|基于springboot + vue药店管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·美食分享系统
满怀冰雪13 分钟前
第15篇-链表基础-反转链表-合并链表与快慢指针
java·算法·链表
番茄去哪了21 分钟前
RabbitMQ
java·rabbitmq·java-rabbitmq
西凉的悲伤22 分钟前
redis-windows 安装 redis 到 windows 电脑
java·windows·redis·redis-windows
starsky7623823 分钟前
NIO与BIO的区别
java·服务器·nio
满怀冰雪29 分钟前
第14篇-队列与单调队列-解决窗口最值问题的关键结构
java·算法
Mahir0841 分钟前
ConcurrentHashMap 底层原理深度解密:从分段锁到 CAS + 红黑树的演进全解
java·面试·concurhashmap
阿维的博客日记1 小时前
那用到动态代理,关键的特征又是什么呢
java·动态代理
都说名字长不会被发现1 小时前
Spring Boot Starter 中间件账号密码加密方案设计与实现
java·spring boot·后端·中间件
摇滚侠1 小时前
Maven 依赖范围
java·maven