Java循环结构之while和do-while循环
循环结构知识点
本章技能目标
1理解循环的含义
2会使用while循环
3会使用do-while循环
4会使用调试解决简单的程序错误
一、 循环的含义
循环就是重复的做……(Java程序中的循环结构有三种实现方式:while循环结构、do-while循环结构、for循环结构)
程序循环的特点:
1、 循环不是无休止进行的,满足一定条件的时候循环才会继续,称为“循环条件”;
2、 循环不满足的时候,循环退出;
3、 循环结构是反复进行相同的或者类似的一系列操作,称为“循环操作”。
二、 while循环
语法:
While(循环条件){
//循环操作
}
流程图:

举例:
Int i=1;
While(i<=100){
System.out.println(“好好学习!”);
I= i+1;
}
★练习--升级购物系统
1.循环输入商品编号和购买数量,系统自动计算每种商品的价钱(单价*购买数量),并累加得到总金额。
2.当用户输入‘n’时,表示需要结账,则退出循环结账。
3.结账时,根据折扣(八折)计算应付金额,输入实付金额,计算找零。
import java.util.Scanner;
public class Test03 {
public static void main(String[] args) {
//打印菜单
System.out.println("MyShopping管理系统>购物结算\n");
System.out.println("***********************************************");
System.out.println("请选择购买的商品编号:");
System.out.println("1.T恤\t2.网球鞋\t3.网球拍");
System.out.println("***********************************************");
//从键盘接收
@SuppressWarnings("resource")
Scanner input = new Scanner(System.in);
//初始化商品信息
String name = " ";//商品名称
double price = 0;//商品价格
double pay = 0;//应付金额
double Pay = 0;//购物总额
//while循环
String conti = "y";
while(conti.equals("y")){
System.out.print("请输入商品编号:");
int id = input.nextInt();
switch(id){
case 1:
name = "T恤";
price = 245;
break;
case 2:
name = "网球鞋";
price = 570;
break;
case 3:
name = "网球拍";
price = 320;
break;
default:
name = "--";
System.out.println("选择错误!");
break;
}//switch
//购买数量
System.out.print("请输入购买数量:");
int num = input.nextInt();//数量
pay = price*num;
Pay = Pay+pay;
System.out.println(name+":¥"+price+"\t数量:"+num+"\t合计:¥"+pay);
//询问是否继续循环
System.out.println("是否继续(y/n)?");
conti = input.next();
}
/*System.out.println("程序结束!");*/
//添加变量
double dis = 0.8;
System.out.println("\n折扣:"+dis);
System.out.println("应付金额:¥"+Pay);
System.out.print("实付金额:¥");
int money = input.nextInt();
double change = money-Pay;
System.out.println("找钱:¥"+change);
}
}
常见错误
使用while循环结构解决问题时,经常会遇到下面的一些错误。
1、 没有为循环变量赋初值
2、 缺少{}
三、do-while循环
语法:
do{
//循环操作
}while(循环条件)
流程图:

举例:
int i = 1;
do{
System.out.println("好好学习!");
i++;
}while(i<=100);
★练习--升级菜单切换
import java.util.Scanner;
public class Test04 {
public static void main(String[] args) {
//打印菜单界面
System.out.println("欢迎使用MyShopping管理系统\n");
System.out.println("***********************************************");
System.out.println("\t\t1.客户信息管理");
System.out.println("\t\t2.购物结算");
System.out.println("\t\t3.真情回馈");
System.out.println("\t\t4.注销");
System.out.println("***********************************************");
//键盘接收数据
System.out.print("\n请选择,输入数字:");
@SuppressWarnings("resource")
Scanner input = new Scanner(System.in);
int num;
//添加do-while循环
do{
num = input.nextInt();
//switch
switch(num){
case 1:
System.out.println("执行客户信息管理");
break;
case 2:
System.out.println("执行购物结算");
break;
case 3:
System.out.println("执行真情回馈");
break;
case 4:
System.out.println("执行注销");
break;
default:
System.out.print("输入错误,请重新输入数字:");
break;
}//switch
}while(num<1||num>4);
System.out.println("\n程序结束");
}
}
四、 本章总结:
1、循环结构由循环条件和循环操作构成。只要满足循环条件,循环操作就会反复执行。
2、使用循环结构解决问题的步骤:
分析循环条件和循环操作,
套用循环结构的语法写出代码,
检查循环能否退出。
3、编写循环结构代码时需注意:
循环变量的初值、循环操作中对循环变量值的改变和循环条件三者之间的关系;确保循环次数正确,不要出现“死循环”。
4、while循环结构的特点是:先判断,后执行;
do-while循环结构的特点是:先执行,再判断。
附:程序调试
Java循环结构之while和do-while循环的更多相关文章
- 循环结构——while、do-while、for循环
1.while循环 语法格式: while(条件判断){ 循环体 } 解释: (1)关键字while后的小括号中的内容时循环条件. (2)循环条件是一个布尔表达式,它的值为布尔类型 "真&q ...
- [Java基础]循环结构3
[Java基础]循环结构3 break 与 continue 中断循环... /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:BreakTest.java 编写时间:2016/6 ...
- [java基础]循环结构2
[java基础]循环结构2 写了几个循环结构练习~记录一下~~ 1:99乘法表 /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:GameForFor.java 编写时间:2016 ...
- 【Java】流程控制 - 顺序结构、 选择(分支)结构(单分支、双分支、多分支、嵌套)、循环结构(for、while、do...while)、跳转语句(break、continue)
流程控制语句结构 文章目录 流程控制语句结构 一. 顺序结构 1. 输出语句 2. 输入语句 3.code 二.复合语句 三. 分支结构 1. 条件判断 1.单分支结构 2.双分支结构 3.多分支结构 ...
- Java程序设计基础笔记 • 【第5章 循环结构】
全部章节 >>>> 本章目录 5.1 while循环结构 5.1.1 循环简介 5.1.2 while循环 5.1.3 while循环的使用 5.1.4 while循环的注 ...
- Java基础语法Day_02-03(数据类型、运算符、方法、循环结构)
第5节 数据类型转换 day02_01_数据类型转换_自动转换 day02_02_数据类型转换_强制转换 day02_03_数据类型转换_注意事项 day02_04_ASCII编码表 第6节 运算符 ...
- JAVA循环结构示例
本文章主要是帮助大家学习循环结构.学习循环时,最重要的是理清思路,那些最经典算法实际中我们并不会单拿出来用,而是会用到当时做这个算法时的思想.如果把这个思路想明白了,那么实际中用到他的时候自然而然就想 ...
- Java中的循环结构
1.while循环结构 语法: while(循环条件){ //循环操作 } while循环结构流程图: 举例: int i = 1; while(i <= 100){ System.out.pr ...
- 小白的java学习之路 “ 循环结构(二)”
一.for 循环 语法: for(表达式一;表达式二;表达式三){ 循环操作 } 表达式一:参数初始化 表达式二:条件判断 表达式三:更新循环变量 执行流程: 步骤一:执行表达式一.初始化参数 步骤二 ...
随机推荐
- MySQL学习笔记(一):查询
查询实例: 1.创建数据库并使用: create database school; use school; 2.创建表并插入内容: create table student( Sno char(9) ...
- 洛谷P2774 方格取数问题(最小割)
传送门 考虑一下,答案就是全局和减去舍弃和 不难发现,如果我们按行数+列数的奇偶性分为两类,那么每一类中的数必然互不相邻 那么我们把原图的点分为黑点和白点两类,原地向白点连边,黑点向汇点连边,容量为点 ...
- 一个简单的Samba服务
上次给大家认识了下,搭建一个服务大概的一个认识. 这次给大家搭建一个Samba服务认识下. 项目准备: 虚拟机一个(Centos6.5版本) 项目目标: 进行samba最简单的配置 项目难度: ❤❤ ...
- Linux里的用户管理
在linux中系统中,它并不认识帐号名称.它认识的是我们的帐号ID,帐号ID保存在/etc/passwd文件中.我们在登录linux主机时,在输入完帐号和密码时,linux会先查找/etc/passw ...
- c语言数据结构学习心得——线性表
线性表:具有相同数据类型的n(n>0)个数据元素的有限序列. 主要有顺序存储和链式存储. 顺序存储: 特点:地址连续,随机/存取,顺序存储. 建立:首地址/存储空间大小(数组),表长. 方式:静 ...
- org.apache.storm.utils.NimbusLeaderNotFoundException: could not find leader nimbus from seed hosts["datanode9"]. Did you specify a valid of nimbus hosts for config nimbus.seeds?
出现这个异常的原因主要是zookeeper没有正常工作引起的.可以在storm-conf-storm.yaml中设置 storm.zookeeper.servers: -"zookeeper ...
- [转][Java]使用Spring配合Junit进行单元测试的总结
http://www.51testing.com/html/14/n-1408814.html 1.直接对spring中注入的bean进行测试(以DAO为例): 在测试类上添加@RunWith注解指定 ...
- 006 Android XML 文件布局及组件属性设置技巧汇总
1.textview 组件文本实现替换(快速实现字符资源的调用) android 应用资源位置在 project(工程名)--->app--->res--->values 在stri ...
- mysql数据库怎么使用,mysql的使用方法
https://jingyan.baidu.com/article/5d368d1ec069c13f61c05742.html 数据库的开启与关闭: https://blog.csdn.net/u01 ...
- xml转换csv
/// <summary> /// xml文件转换为CSV /// </summary> /// <param name="fileName"> ...