循环

打印一个字符串(例如: "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的更多相关文章

  1. 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 ...

  2. Java学习笔记-12.传递和返回对象

    1.Clone()方法产生一个object,使用方法后必须产生的object赋值. Vector v2 = (Vector)v.clone(); 2.Clone()方法在object中是保护类型方法, ...

  3. Java学习笔记12(面向对象五:构造方法、this再探)

    在开发中,经常需要在创建对象的同时明确对象对的属性值, 比如一个Person对象创建时候就应该有age和name等属性 那么如何做到在创建对象的同时给对象的属性初始化值呢? 这里介绍构造方法: 1.构 ...

  4. java学习笔记12(final ,static修饰符)

    final: 意思是最终的,是一个修饰符,有时候一个功能类被开发好了,不想被子类重写就用final定义, 用final修饰的最终数据成员:如果一个类的数据成员用final修饰符修饰,则这个数据成员就被 ...

  5. 0028 Java学习笔记-面向对象-Lambda表达式

    匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...

  6. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

  7. 20145330第八周《Java学习笔记》

    20145330第八周<Java学习笔记> 第十五章 通用API 通用API 日志:日志对信息安全意义重大,审计.取证.入侵检验等都会用到日志信息 日志API Logger:注意无法使用构 ...

  8. 20145330第七周《Java学习笔记》

    20145330第七周<Java学习笔记> 第十三章 时间与日期 认识时间与日期 时间的度量 GMT(格林威治标准时间):现在不是标准时间 世界时(UT):1972年UTC出来之前,UT等 ...

  9. 20145330第六周《Java学习笔记》

    20145330第六周<Java学习笔记> . 这周算是很忙碌的一周.因为第六周陆续很多实验都开始进行,开始要准备和预习的科目日渐增多,对Java分配的时间不知不觉就减少了,然而第十和十一 ...

随机推荐

  1. linux命令详解:md5sum命令

    前言 在网络传输.设备之间转存.复制大文件等时,可能会出现传输前后数据不一致的情况.这种情况在网络这种相对更不稳定的环境中,容易出现.那么校验文件的完整性,也是势在必行的. 使用说明 md5sum命令 ...

  2. ELF Format 笔记(十三)—— 段权限

    ilocker:关注 Android 安全(新手) QQ: 2597294287 一个可被系统加载的程序至少拥有一个可加载段.当系统创建可加载段的内存映像时,会根据 p_flags 赋予一定的访问权限 ...

  3. [百度经验]window下连接mysql 错误代码 1045

    连接mysql时出现错误代码 1045 Access denied for user 'root'@'localhost' (using password:YES) 百度经验:jingyan.baid ...

  4. Label控件如何根据字符串自定义大小

    一.. this.label_Msg.AutoSize = false;  //设置label空件不能自动大小 二.. 用代码控制label控件的大小 1.根据字符串.label的宽度 计算字符串的面 ...

  5. pyqt5-为QListWidget添加右键菜单

    如何在pyqt5下为QListWidget添加右键菜单? 能百度到的均是pyqt4下的,有些貌似并不好用. 在尝试了很多方法后,下面贴出可用的方法: from PyQt4 import QtCore, ...

  6. POJ2455Secret Milking Machine[最大流 无向图 二分答案]

    Secret Milking Machine Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 11865   Accepted ...

  7. simpleCart的简单使用及配置

    simpleCart的功能就不用解释,购物车,很6.官网上的说明太模糊了,还是GIHUb上的好一点:https://github.com/wojodesign/simplecart-js/ 文章解决问 ...

  8. rsyslog及logrotate小结

    [root@node1 logrotate.d]# ls dracut haproxy httpd mcelog nginx ppp psacct syslog yum   yum install n ...

  9. 搭建一套自己实用的.net架构(2)【日志模块-log4net】

    先谈谈简单的模块,日志.在系统中日志模块是必须的,什么系统日志,操作日志,调试日志.这里用的是log4net. 对log4net还不熟悉的小伙伴们赶快去搜索基础教程哦, 我这里就不温故了. 那么有人要 ...

  10. 让所有的浏览器都能识别HTML5标签样式的小插件

    如今HTML5愈来愈引发大家的关注了,但目前支持HTML5的浏览器还不是主流,特别是国内用户近50%以上仍旧使用IE6,由于支持HTML5的IE9不支持Xp系统安装,这样未来很长一段时间,HTML5的 ...