(一)基于IDEA的JAVA基础9

循环结构及特点

while循环

do while循环

for 循环

特点:有循环条件

循环起始值

循环自增量(每次自增的量)

循环操作

while循环

语法:

初始部分//定义变量的地方,声明变量

while(循环条件){

循环操作;

迭代部分; }

流程图:

练习:打印40份文件

public class Test01 {

public static void main(String\[\] args) {

//定义一个初始值,用i接收

int i=1;

while (i<=10){

System.out.println("打印第"+i+"份文件");

i++;

}

}

}

这个小练习基本能看出来while循环的写法,再练个稍微复杂点的:

/检查文件是否合格,如果不合格继续写代码。

public class Test01 {

public static void main(String\[\] args) {

System.out.println("请输入文件是否合格,合格yes/不合格no");

Scanner input = new Scanner(System.in);

//用来yn接收是否合格

String yn = input.next();

while (yn.equals("no")){

System.out.println("晚上留下来加班敲代码!");

//循环迭代部分

System.out.println("重新输入是否合格,合格yes/不合格no");

yn=input.next();(这里可以直接这么写来接收)

}

System.out.println("下班了");

}

}

do While循环

特点:先执行,后判断。

语法:

do{

循环操作;

}while(循环条件);

流程图:

还是写个练习,判断文件是否合格:

public class Test01 {

public static void main(String\[\] args) {

String yn;//作用域够高,while中才能引用,如果只在do中声明,只作用于do中。

do {

System.out.println("文件是否合格,合格yes/不合格no");

Scanner input = new Scanner(System.in);

yn = input.next();//外面声明过这不用再声明

}while (yn.equals("no"));

System.out.println("下班吧!");

}

}

while与dowhile比较

语法不同,执行次序不同。

for循环

语法:

for(循环的初始值;循环条件;循环的自增量)

{

循环操作;

}

一般来说,当我们知道要循环几次时,用for比较简约。

还是打印文件,这次少打印点,打五份:

public class Test01 {

public static void main(String\[\] args) {

for (int i=1;i<=5;i++){

System.out.println("打印第"+i+"份文件");

}

}

}

那我们再来升级一下练习:

随意输入一个数字,输出一个加法表。

public class Test01 {

public static void main(String\[\] args) {

System.out.println("输入一个数字");

Scanner input = new Scanner(System.in);

int num = input.nextInt();

int num2;

for (int i=0;i<=num;i++){

num2=num-i;

System.out.println(i+"+"+num2+"="+(i+num2));

}

}

}

好,这就是这三个循环的基本用法。

相关推荐
砍材农夫2 分钟前
spring|spring event|Spring内置事件驱动编程模型
java·数据库·spring
wuqingshun3141591 小时前
RabbitMQ 中无法路由的消息会去到哪里?
java
北冥you鱼2 小时前
Go-Ethereum (Geth) 最佳实践:从部署到生产环境优化
开发语言·后端·golang
thefool1122662 小时前
Java 方法重载
java
这不小天嘛8 小时前
JAVA八股——J集合篇
java·开发语言
AOwhisky9 小时前
Python 学习笔记(第一期与第二期)——基础语法——核心知识点自测与详解
开发语言·笔记·python·学习·云原生·运维开发
什巳11 小时前
JAVA练习278- 和为 K 的子数组
java·学习·算法·leetcode
豆瓣鸡11 小时前
RocketMQ学习-Spring Boot消息实践
java·spring boot·rocketmq
喜欢的名字被抢了11 小时前
Python实战:SQLAlchemy ORM与FastAPI项目集成
开发语言·python·sql·教程·fastapi
wuqingshun31415912 小时前
说一下mysql的覆盖索引
java