day05生成随机数、do-while循环、for循环、循环流控(break和continue)、循环嵌套
复习
1.多重if
一个条件触发的情况在3种或以上时
if(<条件1>){
//条件1为真时运行
}else if(<条件2>){
//条件1为假,条件2为真时运行
}else if(<条件3>){
//条件1,2为假,条件3为真时运行
}else{
//条件1,2,3均为假时运行
}
2.switch结构
switch(<整数表达式>){
case 1:
//整数表达式结果为1时运行
break;
case 2:
//整数表达式结果为2时运行
break;
....
default:
//整数表达式没有匹配结果时运行
}
3.多种结构的优缺点
1)范围判断用多重if
2)等值判断用switch
4.循环结构
1)什么是循环
反复运行相同或相似的代码
2)为什么使用循环
减少代码冗余,提高程序的可维护性
3)循环的要素
3.1)循环变量
3.2)循环条件
3.3)循环操作
3.4)变量更新
5.while循环
while(<条件>){
//条件为真时运行的代码
}
笔记
1.生成随机数
1.1)import java.util.Random;
1.2)Random ran=new Random();
1.3)生成整数
int xxx=ran.nextInt(<随机范围>);
xxx可能出现的数值是
0 ~ 随机范围-1
例如ran.nextInt(10)
可能产生的数值就是0~9
2.do-while循环
语法
do{
//条件为真时运行的代码
}while(<条件>);
3.while和do-while循环的区别
1)while循环:
先判断,后执行
初始条件不满足,一次都不执行
2)do-while循环:
先执行,后判断
初始条件不满足,也会至少执行一次
3)理解时,理解为:
while循环比do-while循环
多判断一次
4.for循环
1)for循环语法
for(表达式1;表达式2;表达式3){
//循环体
}
1.1)
表达式1:声明循环变量
表达式2:循环条件
表达式3:变量的更新
1.2)
表达式1,2,3,均可以省略
表达式2省略默认为true
但是两个 ; 不能省略
1.3)
表达式1中可以声明多个变量,
用,分隔
表达式3中可以多个变量的更新
用,分隔
1.4)for循环适合处理
循环次数固定的循环
5.循环结构小结
1)循环次数确定的使用for
2)循环次数不确定的使用
while或do-while
2.1)当......的时候
使用while
2.2)直到.....的时候
使用do-while
6.循环流控
1)break关键字
switch中的break能终止switch结构
循环结构中的break能终止循环结构
while,do-while,for均可以使用
2)continue关键字
只能使用在循环结构中
循环中运行到continue的效果是:
跳过本次循环没有运行的代码
继续运行下次循环
7.循环嵌套
1)什么是循环嵌套
一个循环结构中
又包含另一个完整的循环结构
2)循环嵌套的注意事项
2.1)外层循环循环一次
内存循环循环一遍
2.2)流控关键字(break,continue)
在内层循环中
只影响内层循环
2.3)while\dowhile\for
能够随意相互嵌套
2.4)循环嵌套层次不限
应该避免过多层次的嵌套
作业
1)机票价格按照淡季旺季、
头等舱和经济舱收费、
输入机票原价、月份和1头等舱或2经济舱,
其中旺季(5-10月)
头等舱9折,经济舱85折,
淡季(11月到来年4月)
头等舱7折,经济舱65折,
最终输出机票价格
Scanner scan=new Scanner(System.in);
System.out.println("请输入机票原价");
double price=scan.nextDouble();
System.out.println("请输入月份");
int month=scan.nextInt();
System.out.println("舱级(1.头等舱 2.经济舱)");
int level=scan.nextInt();
//旺季
if(month>=5 && month<=10) {//头等舱
if(level==1) {
price*=0.9;
}else {//经济舱
price*=0.85;
}
}else {//淡季
if(level==1) {//头等舱
price*=0.7;
}else {
price*=0.65;
}
}
System.out.println("折后机票价格为:"+price);
do-while
1)使用do-while循环编写
小明第一个月工资4000
以后每个月比上个月多200
计算12个月小明总共能拿到多少工资
int sum=0;
int i=1;
int sal=4000;
do {
sum+=sal;
sal+=200;
i++;
}while(i<=12);
System.out.println(sum);
2)使用do-while循环编写
小明第一个月工资4000
以后每个月比上个月多200
当小明总共拿到的工资超过
150000时需要多少个月
int i=1;
int sum=0;
int sal=4000;
do {
sum+=sal;
System.out.println("sum:"+sum+",i:"+i+",sal:"+sal);
sal+=200;
i++;
}while(sum<150000); System.out.println(i-1);
for循环练习
1)用户在循环中输入5个学生的成绩
计算他们的平均分
Scanner scan=new Scanner(System.in);
int sum=0;
for(int i=1;i<=5;i++) {
System.out.println("请输入第"+i+"位学生成绩");
int score=scan.nextInt();
sum+=score;
}
double avg=1.0*sum/5;
System.out.println("平均分为:"+avg);
break
1)编写一个循环 提示:
循环中用户输入 while(true){
数字如果用户输入的 ... while(true){
数字是负数 }
循环结束
Scanner scan=new Scanner(System.in);
//用户输入负数循环退出
while(true) {
System.out.println("请输入数字");
int num=scan.nextInt();
if(num<0) {
//num小于0,退出
break;
} }
2)编写一个循环
循环中用户输入密码(int类型)
如果用户输入的是123456(正确)
循环结束
并输出循环了几次
Scanner scan=new Scanner(System.in);
int i=1;
do {
System.out.println("请输入密码");
int pwd=scan.nextInt();
//密码正确循环退出
if(pwd==123456) {
break;
}
System.out.println("密码错误,重新输入");
i++;
}while(true);
System.out.println("总共输入了"+i+"次");
循环嵌套
1)使用循环嵌套实现输出
九九乘法表
for(int i=1;i<=9;i++) {
for(int j=1;j<=i;j++) {
System.out.print(
j+"×"+i+"="+i*j+" ");
}
System.out.println();
}
day05生成随机数、do-while循环、for循环、循环流控(break和continue)、循环嵌套的更多相关文章
- 脚本开头,python预编译,控制台输入输出,for,while循环,分支判断,break,continue
3. name = input("name:")与2.x中raw_input一回事, 注意接收的变量全部默认为字符串类型. 从控制台接收用户输入,而密文输入import getpa ...
- 循环内的switch中break和continue使用区别
首先看下break和continue的使用方法. break语句在循环和switch语句中使用,用于终止最近的封闭代码块,如果在嵌套循环中,则只终止最近的循环. continue语句在循环中使用,不能 ...
- 编码原则:最小化使用控制结构(条件和循环)续:告别 break 和 continue
如果最小化的使用了for.while等控制结构,那么,之前控制结构对应的两个控制语句(break he continue)也需要有对应的替换方案,好在几乎所有支持高阶函数的语言的集合API都有支持.
- java中break和continue跳出指定循环(转载)
java中break和continue跳出指定循环 java中break和continue可以跳出指定循环,break和continue之后不加任何循环名则默认跳出其所在的循环,在其后加指定循环名,则 ...
- break和continue在多重循环中使用
break和continue在多重循环中使用 关于break和continue在java中,break的作用是跳出循环,continue的作用是跳出本次循环. 我们一般情况下,这样使用: public ...
- java中多重循环和break、continue语句
一.嵌套循环 循环可以互相嵌套,以实现更加复杂的逻辑,其代码的复杂程度也会提高,对初学者而言这应该是个难点,下面我们通过一些例子说明嵌套循环的使用,读者要自己把这些代码上机练习,并理解程序运行的流程. ...
- mysql循环插入数据、生成随机数及CONCAT函数
实现目标:一年12个月,每个月插入一条数据,score为1-5的随机数 循环语句: WHILE -- DO -- END WHILE DELIMITER ; CREATE PROCEDURE test ...
- Visual Studio 2017 - Windows应用程序打包成exe文件(2)- Advanced Installer 关于Newtonsoft.Json,LINQ to JSON的一个小demo mysql循环插入数据、生成随机数及CONCAT函数 .NET记录-获取外网IP以及判断该IP是属于网通还是电信 Guid的生成和数据修整(去除空格和小写字符)
Visual Studio 2017 - Windows应用程序打包成exe文件(2)- Advanced Installer Advanced Installer :Free for 30 da ...
- C# Random循环生成随机数重复问题解决方案
C# Random循环生成随机数重复问题解决方案1.当我们通过Random生成随机数时,习惯的写法如下: int a=new Random().Next(0,100); 然后生成一个数据数没有任何问题 ...
随机推荐
- 【转】Pandas常见用法总结
关键缩写和包导入 在这个速查手册中,我们使用如下缩写: df:任意的Pandas DataFrame对象 s:任意的Pandas Series对象 raw:行标签 col:列标签 引入响应模块: im ...
- [转]Xtrabackup 的 xtrabackup_binlog_pos_innodb和xtrabackup_binlog_info 文件区别
[转自] http://julyclyde.org/?p=403 在操作 innobackupex 的时候,执行 change master to 的时候发现 xtrabackup_binlog_po ...
- spring boot 一个项目启动多个实例
0.前言 在开发中,我们经常需要以不同端口启动同一个项目的多个实例,IDEA中启动多个实例很简单 1.方法 1.1.在项目中,选择编辑配置,然后点选允许并行运行,如下图: 1.2.调出RunDashb ...
- 用.NET解索尼相机ARW格式照片
用.NET解索尼相机ARW格式照片 目前常用的照片格式是.jpg,它只能提供8bit的色彩深度,而目前主流的相机都能提供高达12bit-14bit的色彩深度,动态范围和后期处理能力也大大增加,这也是为 ...
- Vue组件应用
Vue的组件是可复用的 Vue 实例,且带有一个名字 .我们可以在一个通过 new Vue 创建的 Vue 根实例中,把这个组件作为自定义元素来使用.因为组件是可复用的 Vue 实例,所以它们与 ne ...
- HIT2019视听觉信号处理视觉实验一
写在前面 HIT大三上学期视听觉信号处理课程中视觉部分的实验一,经过和学长们实验的对比发现每一级实验要求都不一样,因此这里标明了是2019年秋季学期的视觉实验一. 由于时间紧张,代码没有进行任何优化, ...
- [NACOS HTTP-GET] The maximum number of tolerable server reconnection errors has been reached
错误的意思是:已达到可容忍的服务器重连接错误的最大数目.有两个解决思路:一个将这个值设置的更大:然后是排查自己连接服务哪儿出了问题.先说在哪儿设置这个值:在拉取nacos服务的注解配置中,添加一个属性 ...
- Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:build-helper-maven-plugin:1.8:add-test-source (execution: add-functional-source, phase: generate-sources)
在maven项目中使用add-source时,pom.xml报如下错误: Plugin execution not covered by lifecycle configuration: org.co ...
- Golang中的布隆过滤器
目录 1. 布隆过滤器的概念 2. 布隆过滤器应用场景 3. 布隆过滤器工作原理 4. 布隆过滤器的优缺点 5. 布隆过滤器注意事项 6. Go实现布隆过滤器 1. 布隆过滤器的概念 布隆过滤器(Bl ...
- Creating your first iOS Framework
转自:https://robots.thoughtbot.com/creating-your-first-ios-framework If you’ve ever tried to create yo ...