Java的循环语句有for,while和 do-while。这些语句创造了我们通常所称的循环(loops)。你可能知道,一个循环重复执行同一套指令直到一个结束条件出现。你将看到,Java有适合任何编程所需要的循环结构。
while语句
while语句是Java最基本的循环语句。当它的控制表达式是真时,while语句重复执行一个语句或语句块。它的通用格式如下:

while(condition) {
// body of loop
}

条件condition可以是任何布尔表达式。只要条件表达式为真,循环体就被执行。当条件condition为假时,程序控制就传递到循环后面紧跟的语句行。如果只有单个语句需要重复,大括号是不必要的。
下面的while循环从10开始进行减计数,打印出10行“tick”。

// Demonstrate the while loop.
class While { public static void main(String args[]) { int n = 10; while(n > 0) { System.out.println("tick " + n); n--;
}
}
}

当你运行这个程序,它将“tick”10次:

tick 10
tick 9
tick 8
tick 7
tick 6
tick 5
tick 4
tick 3
tick 2
tick 1

因为while语句在循环一开始就计算条件表达式,若开始时条件为假,则循环体一次也不会执行。例如,下面的程序中,对println( )的调用从未被执行过:

int a = 10, b = 20;
while(a > b)
System.out.println("This will not be displayed");

while循环(或Java的其他任何循环)的循环体可以为空。这是因为一个空语句(null statement)(仅由一个分号组成的语句)在Java的语法上是合法的。例如,下面的程序:

// The target of a loop can be empty.
class NoBody { public static void main(String args[]) {int i, j; i = 100; j = 200; // find midpoint between i and j while(++i < --j) ; // no body in this loop System.out.println("Midpoint is " + i);
}
}

该程序找出变量i和变量j的中间点。它产生的输出如下:

Midpoint is 150

该程序中的while循环是这样执行的。值i自增,而值j自减,然后比较这两个值。如果新的值i仍比新的值j小,则进行循环。如果i等于或大于j,则循环停止。在退出循环前,i将保存原始i和j的中间值(当然,这个程序只有在开始时i比j小的情况下才执行)。正如你看到的,这里不需要循环体。所有的行为都出现在条件表达式自身内部。在专业化的Java代码中,一些可以由控制表达式本身处理的短循环通常都没有循环体。

Java基础篇:循环语句之while语句相关推荐

  1. Java基础篇:如何使用continue语句

    有时强迫一个循环提早反复是有用的.也就是,你可能想要继续运行循环,但是要忽略这次重复剩余的循环体的语句.实际上,goto只不过是跳过循环体,到达循环的尾部. continue语句是break语句的补充 ...

  2. 【Java基础篇】try catch finally语句包含return语句时的执行过程

    网上有很多人探讨Java中异常捕获机制try-catch-finally块中的finally语句是不是一定会被执行? 很多人都说不是,当然他们的回答是正确的,经过我试验,至少有两种情况下finally ...

  3. Java基础篇:如何嵌套try语句?

    Try语句可以被嵌套.也就是说,一个try语句可以在另一个try块内部.每次进入try语句,异常的前后关系都会被推入堆栈.如果一个内部的try语句不含特殊异常的catch处理程序,堆栈将弹出,下一个t ...

  4. Java基础篇:如何使用return语句

    控制语句return也是很重要的,今天就来说说最后一个控制语句是return.return语句用来明确地从一个方法返回.也就是,return语句使程序控制返回到调用它的方法.因此,将它分类为跳转语句. ...

  5. Java基础(八)---- if判断语句

    Java基础(八)---- if判断语句 一.if语句 1.if语句格式 2.if语句执行流程 二.if...else语句 1.if...else语句格式 2.if...else语句执行流程 三.if ...

  6. Java基础篇3——流程控制

    Java基础篇3--流程控制 1.顺序结构 正常代码的流程即是顺序流程 2.分支结构 2.1.if-else分支 if(条件表达式) {语句块1; } if(条件表达式) {语句块1; } else ...

  7. 菜鸟学习笔记:Java基础篇2(变量、运算符、流程控制语句、方法)

    菜鸟学习笔记:Java基础篇2 变量 基本概念 变量作用域 final关键字 运算符 算术运算符 比较运算符 逻辑运算符 位运算符 赋值运算符 条件运算符 运算符优先级 Java三种流程控制语句 顺序 ...

  8. java基础篇---第一天

    今日开始在心中正式开始在培训班开始培训.一下是在培训的过程中发现自己在自学过的过程中发现的问题.这篇是java基础篇. 第一天 : 1)配置java环境变量 1.在系统变量中新建JAVA_HOME:j ...

  9. 《Java 后端面试经》Java 基础篇

    <Java 后端面试经>专栏文章索引: <Java 后端面试经>Java 基础篇 <Java 后端面试经>Java EE 篇 <Java 后端面试经>数 ...

  10. Java基础篇 学习笔记

    List item Java基础篇 学习笔记 java基础篇 第1章 计算机.程序和java概述 学习笔记 1.1什么是计算机 简单来说:计算机就是 ' 存储 ' 和 ' 处理 ' 数据的电子设备. ...

最新文章

  1. Cocos Creator里cc.tween的stopAllActions() 和 repeatForever的用法
  2. 后盾网lavarel视频项目---3、lavarel中子控制器继承父控制器以判断是否登录
  3. 如何使用ASP.NET Core Web API实现短链接服务
  4. [HDU] 2553 N皇后问题-简单深搜
  5. 前端小白,如何快速提升自己?了解3点,找工作不用愁
  6. 学JAVA第十三天,方法、方法重载及构造函数
  7. ERROR 1442 (HY000):because it is already used by statement which invoked this stored function/tr
  8. Edmonds-Karp算法
  9. 查看oracle已使用表空间,查看Oracle的表空间的使用情况
  10. PHP中如何获取字符串的长度
  11. 物联网安全风险威胁报告
  12. 使用Kubeadm来搭建k8s-v1.18.2(包含所有错误集锦分析)
  13. 经验分享:半桥电路的工作原理及注意问题(转载)
  14. 计算机教师培训项目申报书,课题《基于培养教师信息素养的教学研究》申报书(2013年4月—2015年3月)...
  15. 基于SpringBoot的在线快递寄送与管理系统
  16. 你觉得学 Python 还是 Java 更好找工作?
  17. 记一次Very Animation动画插件使用
  18. 利用物联网全方位节能,降费增效明显
  19. Nginx :user nobody
  20. Win10安装masmplus的摸爬滚打

热门文章

  1. [转载] 字符串最长重复子串python_查找字符串中重复字符的最长子字符串
  2. [转载] vscode python导入模块
  3. [Bzoj1010][HNOI2008]玩具装箱toy(斜率优化)
  4. Nginx静态文件路径配置
  5. 从程序员到项目经理(24):慎于问敏于行 - 忠于工作不等于奴性
  6. HTML知识积累及实践(四) - 表单元素
  7. LeetCode-14.最长公共前缀(字符串的erase()函数)
  8. 正弦函数_傅里叶为什么会想到把函数展开为正弦波
  9. pid算法matlab仿真程序和c程序,pid算法matlab仿真程序和c程序.doc
  10. spring cloud搭建_Spring Cloud Eureka 注册中心集群搭建,Greenwich 最新版!