Java中的while和do...while循环

while和do...while循环

while循环

基本语法

java 复制代码
循环变量初始化;
while(循环条件){
	
	循环体(语句);
	循环变量迭代;
}

1)while循环也有四要素:循环变量初始化,循环条件,循环体(语句),循环变量迭代。

2)只是四要素放的位置和for不一样。

执行流程

注意事项

1)循环条件是返回一个布尔值的表达式(只能为真或假)

2)while循环是先判断再执行语句

练习

用while循环打印1-100之间所有能被3整除的数

java 复制代码
public class Test{
	public static void main(String[] args){

	int i = 1;
	while(i <= 100){
		if(i % 3 == 0){
			System.out.println(i + "能被3整除");
			
		}
			i++;
	}

	}
}

随时改变范围值和被n整除的数

java 复制代码
import java.util.Scanner;
public class ForTest{
	public static void main(String[] args){

	Scanner sc = new Scanner(System.in);
	System.out.println("请输入初始范围:");
	int start = sc.nextInt();
	
	System.out.println("请输入结束范围:");
	int end = sc.nextInt();
	
	System.out.println("请输入需要被整除的整数:");
	int temp = sc.nextInt();
	
	int i = start;
	while(i <= end){
		if(i % temp == 0){
			System.out.println(i + "能被" + temp + "整除");
			
		}
			i++;
	}

	}
}

do...while循环

基本语法

java 复制代码
do{
	循环体(语句);
	循环变量迭代;
}while(循环条件)**;**

说明

1.do while 是关键字,也有循环四要素,只是位置不一样

2.先执行再判断,一定至少执行一次

3.最后有一个 分号

4.while 和 do...while区别举例:我去要账,while循环先问对方还不还钱,对方说还钱,我直接就走了退出while循环,说不还,就揍他一顿;而do...while循环,见到对方先打一顿然后再问还不还钱,对方说还钱,我直接就走了退出循环,说不还,就再揍他一顿。

流程图

练习

1.用do...while循环统计1-200之间能被5整除但不能被3整除的个数

java 复制代码
public class ForTest{
	public static void main(String[] args){

	int i = 1;
	int count = 0;
	do{
		if(i % 5 == 0 && i % 3 != 0){
			count++;
		}

		i++;
	}while(i <= 200);

	System.out.println("count = " + count);

	}
}

2.如果李三不还钱,则一直使出五连鞭,直到李三说还钱为止。(字符串比较用equals()方法)

java 复制代码
import java.util.Scanner;
public class ForTest{
	public static void main(String[] args){
	Scanner sc = new Scanner(System.in);
	char answer = ' ';
	do{
		System.out.println("用五连鞭抽李三");
		System.out.println("问:还钱吗,回答y/n");
		answer = sc.next().charAt(0);
	}while(answer != 'y');

	}
}
相关推荐
寻寻觅觅☆7 分钟前
东华OJ-基础题-104-A == B ?(C++)
开发语言·c++
马猴烧酒.8 分钟前
【面试八股|JAVA多线程】JAVA多线程常考面试题详解
java·服务器·数据库
lightqjx18 分钟前
【C++】unordered系列的封装
开发语言·c++·stl·unordered系列
zh_xuan33 分钟前
kotlin lazy委托异常时执行流程
开发语言·kotlin
sino爱学习44 分钟前
高性能线程池实践:Dubbo EagerThreadPool 设计与应用
java·后端
阿猿收手吧!1 小时前
【C++】string_view:高效字符串处理指南
开发语言·c++
风生u1 小时前
activiti7 详解
java
玄同7651 小时前
我的 Trae Skill 实践|使用 UV 工具一键搭建 Python 项目开发环境
开发语言·人工智能·python·langchain·uv·trae·vibe coding
岁岁种桃花儿1 小时前
SpringCloud从入门到上天:Nacos做微服务注册中心(二)
java·spring cloud·微服务
Word码1 小时前
[C++语法] 继承 (用法详解)
java·jvm·c++