Java学习笔记12
循环
打印一个字符串(例如: "Welcome to Java!") 100次,就需要吧下面的输出语句重复写100遍,这是相当繁琐的:
System.out.println("Welcome to Java!");
循环用来控制语句块重复执行的次数
int count = 0;
while(coun < 100){
System.out.println("Welcome to Java!");
count++;
}
Java提供了三种类型的循环语句: while循环, do-while循环, for循环
while循环的语法:
while(循环继续条件){
//循环体
语句(组);
}
当循环继续条件为true时,while循环重复执行循环体重的语句.
猜数字游戏
随机产生0到100之间且包含0和100的整数,程序提示用户连续输入一个数字,直到它和计算机产生的随机数相匹配为止.对用户每次输入的数字,程序都要告诉用户该输入值是太大了,还是太小了,这样用户可以明智地进行下一轮的猜测.
编码前的思考:
首先做什么?
首先要产生0到100之间且包含0和100的随机数
然后做什么?
然后提示用户输入一个猜测数
最后做什么?
最后将这个猜测数和随机数进行比较
对涉及到编写循环的程序而言,如果不知道如何立即编写循环,可以编写循环只执行一次的代码,然后规划如何在循环中重复执行这些代码.
循环设计策略:
第一步: 确定需要重复的语句
第二步: 将这些语句放在一个循环中,如下所示:
while(true){
语句组;
}
第三步: 为循环继续条件编码,并为控制循环添加适合的语句
while(循环继续条件){
语句组;
用于控制循环的附加语句;
}
package welcome;
public class LoopDemo {
public static void main(String[] args) {
// 打印"Welcome to Java!"字符串100次
int count = 0;
while(count < 100){
System.out.println("Welcome to Java!");
count++;
}
// 计算1+2+3+4+5+6+7+8=9
int sum = 0, i = 1;
while(i < 10){
sum = sum + i;
i++;
}
System.out.println("sum is " + sum);
}
}
package welcome;
import java.util.Scanner;
public class GuessNumberOneTime {
public static void main(String[] args) {
// 产生一个随机数
int number = (int)(Math.random() * 101);
// 创建一个Scanner对象
Scanner in = new Scanner(System.in);
System.out.println("Guess magic number between 0 and 100");
int guess = -1;
while(guess != number){
// 提示用户输入猜测数
System.out.print("Enter your guess: ");
guess = in.nextInt();
// 比较随机数和猜测数
if(guess == number){
System.out.println("Yes, the number is " + number);
}else if(guess > number){
System.out.println("Your guess is too high");
}else{
System.out.println("Your guess is too low");
}
}
}
}
Java学习笔记12的更多相关文章
- java学习笔记(12) —— Struts2 通过 xml /json 实现简单的业务处理
XML 1.引入dom4j-2.0.0.jar 2.引入jquery-1.8.2.js 3.新建common.js getInfo = function(){ $.post("getXmlA ...
- Java学习笔记-12.传递和返回对象
1.Clone()方法产生一个object,使用方法后必须产生的object赋值. Vector v2 = (Vector)v.clone(); 2.Clone()方法在object中是保护类型方法, ...
- Java学习笔记12(面向对象五:构造方法、this再探)
在开发中,经常需要在创建对象的同时明确对象对的属性值, 比如一个Person对象创建时候就应该有age和name等属性 那么如何做到在创建对象的同时给对象的属性初始化值呢? 这里介绍构造方法: 1.构 ...
- java学习笔记12(final ,static修饰符)
final: 意思是最终的,是一个修饰符,有时候一个功能类被开发好了,不想被子类重写就用final定义, 用final修饰的最终数据成员:如果一个类的数据成员用final修饰符修饰,则这个数据成员就被 ...
- 0028 Java学习笔记-面向对象-Lambda表达式
匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- 20145330第八周《Java学习笔记》
20145330第八周<Java学习笔记> 第十五章 通用API 通用API 日志:日志对信息安全意义重大,审计.取证.入侵检验等都会用到日志信息 日志API Logger:注意无法使用构 ...
- 20145330第七周《Java学习笔记》
20145330第七周<Java学习笔记> 第十三章 时间与日期 认识时间与日期 时间的度量 GMT(格林威治标准时间):现在不是标准时间 世界时(UT):1972年UTC出来之前,UT等 ...
- 20145330第六周《Java学习笔记》
20145330第六周<Java学习笔记> . 这周算是很忙碌的一周.因为第六周陆续很多实验都开始进行,开始要准备和预习的科目日渐增多,对Java分配的时间不知不觉就减少了,然而第十和十一 ...
随机推荐
- MongoDB学习笔记~为IMongoRepository接口添加分页取集合的方法
回到目录 对于数据分页,我们已经见的太多了,几乎每个列表页面都要用到分页,这已经成了一种定理了,在进行大数据展示时,如果不去分页,而直接把数据加载到内存,这简直是不可以去相向的,呵呵,在很多ORM工具 ...
- 交互式makefile
之前一直不知道在shell中调用read赋值后,怎么传给makefile中的变量,后来才恍然大悟. myname := $(shell read -p "Enter your name:&q ...
- UEFI+GPT模式下的Windows系统中分区结构和默认分区大小及硬盘整数分区研究
内容摘要:本文主要讨论和分析在UEFI+GPT模式下的Windows系统(主要是最新的Win10X64)中默认的分区结构和默认的分区大小,硬盘整数分区.4K对齐.起始扇区.恢复分区.ESP分区.MSR ...
- Visual Studio SetSite failed for package [JavaScriptWebExtensionsPackage] 错误解决方案一则
安装 AspNet5.ENU.RC1.exe Microsoft ASP.NET and Web Tools 2015 (RC) – Visual Studio 2015 打开VS后发生了错误 < ...
- Neutron 理解 (4): Neutron OVS OpenFlow 流表 和 L2 Population [Netruon OVS OpenFlow tables + L2 Population]
学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...
- 《InsideUE4》-7-GamePlay架构(六)PlayerController和AIController
PlayerController:你不懂,伴君如伴虎啊 AIController:上来,我自己动 引言 上文我们谈到了Component-Actor-Pawn-Controller的结构,追溯了ACo ...
- Merge k Sorted Lists
1. Merge Two Sorted Lists 我们先来看这个 问题: Merge two sorted linked lists and return it as a new list. The ...
- 《Paxos Made Simple》翻译
1 Introduction 可能是因为之前的描述对大多数读者来说太过Greek了,Paxos作为一种实现容错的分布式系统的算法被认为是难以理解的.但事实上,它可能是最简单,最显而易见的分布式算法了. ...
- 自动装配[@Autowired]的歧义性
在使用@Autowired自动装配时,如果一个接口有多个实现类,那么自动装配就会出现错误,因为Spring无法判断到底要装配哪个实现类实例(bean). 1.可以使用@Qualifier(" ...
- Hotaru's problem
Hotaru's problem Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) ...