继续接着Java基础语法来:JavaSE入门学习5:Java基础语法(一)JavaSE入门学习6:Java基础语法(二)

语句

Java经常使用的3种循环:while。do...while,for。

(5)Java循环语句之while

语法:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

运行过程:

1)推断while后面的条件是否成立(true/false)。

2)当条件成立时,运行循环内的操作代码 ,然后反复运行1),2),直到循环条件不成立为止。

特点:先推断,后运行。

如:

(6)Java循环语句之do...while

do...while循环与while循环语法有些类似,但运行过程区别比較大。

语法:

运行过程:

1)先运行一遍循环操作,然后推断循环条件是否成立。

2)假设条件成立,继续运行1),2),直到循环条件不成立为止。

特点: 先运行,后推断。

由此可见,do...while 语句保证循环至少被运行一次。

这就是和while循环语句的差别。

比如,依旧输出 1000 遍“我爱慕课网”,使用do...while的实现代码为:

(7)Java循环语句之for

Java 的循环结构中除了while和do...while外。还有for循环。三种循环能够相互替换。

语法:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

运行过程:

1)运行循环变量初始化部分,设置循环的初始状态,此部分在整个循环中仅仅运行一次。

2)进行循环条件的推断,假设条件为true,则运行循环体内代码;假设为false,则直接退出循环。

3)运行循环变量变化部分,改变循环变量的值,以便进行下一次条件推断。

4)依次又一次运行2),3),4),直到退出循环

特点:相比 while 和 do...while 语句结构更加简洁易读。

比如,输出 1000 遍“我爱慕课网”。使用 for 的实现代码为:

须要留心的几个小细节:

1)forkeyword后面括号里的三个表达式必须用";" 隔开,三个表达式都能够省略,但";"不能省略。

a. 省略“循环变量初始化”,能够在 for 语句之前由赋值语句进行变量初始化操作,如:

b. 省略“循环条件”,可能会造成循环将一直运行下去。也就是我们常说的“死循环”现象,如:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

在编程过程中要避免“死循环”的出现。因此,对于上面的代码能够在循环体中使用break语句强制跳出循环。

c. 省略“循环变量变化”。能够在循环体中进行循环变量的变化,如:

2)for 循环变量初始化和循环变量变化部分,能够是使用 “,” 同一时候初始化或改变多个循环变量的值,如:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

代码中,初始化变量部分同一时候对两个变量i和j赋初值。循环变量变化部分也同一时候对两个变量进行变化,执行结果:

3)循环条件部分能够使用逻辑运算符组合的表达式,表示复杂推断条件,但一定注意运算的优先级,如:

代码中,必须同一时候满足变量i小于10 ,而且i不等于5时才会进行循环,输出变量i的值。

(8)Java循环跳转语句之break语句

生活中,我们常常会由于某些原因中断既定的任务安排。在Java中,我们能够使用 break语句退出指定的循环,

直接运行循环后面的代码。

比如,使用循环输出1--10的数值,当中,假设数值大于2 ,而且为3的倍数则停止输出。

实现代码:

执行结果:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

(9)Java循环跳转语句之continue语句

continue语句的作用是跳过循环体中剩余的语句运行下一次循环。

比如,打印1--10之间全部的偶数。使用continue语句实现代码为:

执行结果:

(10)Java循环语句之多重循环

循环体中包括循环语句的结构称为多重循环。三种循环语句能够自身嵌套,也能够相互嵌套,最常见的就是二重

循环。在二重循环中,外层循环每运行一次,内层循环要运行一圈。

例如以下所看到的:

比如:使用*打印长方形:

实现代码为:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

运行流程:当i = 1时,外层循环条件成立。进入内层循环,開始打印第一行内容。此时,j从1開始,循环8次,内

层循环结束后换行。实现第一行 8个 * 的输出。接下来返回外层循环i变为2。准备打印下一行。依此类推。直到完毕

长方形的打印。

那我们再来做一个直角三角形的输出,如:

实现代码:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

最后再来补充一下基本数据类型之间的转换:

基本数据类型转换

1)boolean类型不參与转换。由于不能够以0或非0的整数取代false和true。

这一点和其它的高级程序设计语言不

同,一定要注意。

2)整型。字符型,浮点型的数据类型在混合运算中相互转换,转换时遵循下面的规则:

A默认转换

容量小的类型自己主动转换为容量大的数据类型,数据类型按容量大小排序为:

byte,short,char -- int -- long -- float -- double

byte,short,char之间不相互转换。在计算时首先直接转成int类型參与运算。

B强制转换

容量大的数据类型转换为容量小的数据类型时。要加上强制转换符,但可能造成准确度减少或溢出。使用时一定要注意。

C有多种类型的数据混合运算时,系统首选自己主动的将全部的数据转成容量大的那一种数据类型,再进行计算。

实例的话參考JavaSE入门学习5:Java基础语法(一)中最后面的面试题和思考题。

JavaSE入门学习7:Java基础语法之语句(下)的更多相关文章

  1. java学习笔记 --- java基础语法

    一.java标识符,关键字,保留字 1.标识符 用来增强程序阅读性自定义的名字.类名,变量名,方法名等都可以被称为标识符 标识符的组成: 1.由数字(0-9),字母(a-z,A-Z),下划线(_),美 ...

  2. JavaSE入门学习6:Java基础语法之运算符和语句(上)

    继续接着上篇:JavaSE入门学习5:Java基础语法(一)来看Java的基础语法. 五运算符 运算符是一种"功能"符号,用以通知Java进行相关的运算.比方.我们须要将变量age ...

  3. Java基础语法入门01

    Java基础语法入门01 学习java你要先进行去了解JDK,JRE,JVM JDK Java开发工具包 JRE Java语言开发的运行环境 JVM Java虚拟机,用于Java语言的跨平台所用. 当 ...

  4. 057 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 04 案例:求整型数组的数组元素的元素值累加和

    057 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 04 案例:求整型数组的数组元素的元素值累加和 本文知识点:求整型数组的数组元素的元素值累加和 案例:求整型数 ...

  5. 056 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 03 一维数组的应用

    056 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 03 一维数组的应用 本文知识点:数组的实际应用 程序开发中如何应用数组? 程序代码及其运行结果: 不同数据类 ...

  6. 055 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 02 数组的概念

    055 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 02 数组的概念 本文知识点:数组的概念 数组的声明创建.初始化 在学习数组的声明创建.初始化前,我们可以和之 ...

  7. 054 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 01 数组概述

    054 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 01 数组概述 本文知识点:数组概述 为什么要学习数组? 实际问题: 比如我们要对学生的成绩进行排序,一个班级 ...

  8. 051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试——debug入门1

    051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试--debug入门1 本文知识点: 程序调试--debug入门1 程序 ...

  9. 048 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 10 案例——阶乘的累加和

    048 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 10 案例--阶乘的累加和 本文知识点:通过案例练习嵌套循环应用 案例练习--阶乘的累加和 案例题目 ...

随机推荐

  1. 《Redis设计与实现》

    <Redis设计与实现> 基本信息 作者: 黄健宏 丛书名: 数据库技术丛书 出版社:机械工业出版社 ISBN:9787111464747 上架时间:2014-6-3 出版日期:2014 ...

  2. Plupload设置自定义参数

    在HTML 5比较流行的当下,Plupload是文件上传的不二之选,特别是Adobe宣布2020年将停止对Flash的更新支持.本文记录一下如何在上传文件的时候,传递自定义参数. 了解到两种方式,一种 ...

  3. .condarc(conda 配置文件)、换国内源

    原文地址 https://blog.csdn.net/lanchunhui/article/details/71379555 Configuration — Conda documentation . ...

  4. Makefile:160: recipe for target 'all' failed (Ubuntu 16.06 + Opencv3.2)解决办法

    前言 之前一直用的opencv 好好的,今天安装了anaconda之后,python中的opencv不能用了,即便是拷贝cv2.so之后也是不能用,问题如下: 根本原因 安装anaconda之后,很多 ...

  5. RV32FD指令集

    Risc-V架构定义了可选的单精度浮点指令(F扩展指令集)和双精度浮点指令(D扩展指令集). Risc-V架构规定:处理器可以选择只实现F扩展指令子集而不支持D扩展指令子集:但是如果支持了D扩展指令子 ...

  6. Backbone.js 的 View 中定义事件

    使用 Backbone 的 View 时,可以象传统 jQuery 那样定义事件,$("selector").click(function(){...}).幸运的是 Backbon ...

  7. linux命令学习——tar

    tar命令用来处理压缩,压缩和解压.在linux上经常遇到tar命令,总结如下: tar-c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件这五个是独 ...

  8. 25个Web前端开发工程师必看的国外大牛和酷站

    逛了一周国外大牛们的博客与酷站,真是满满的钦佩.震撼.羡慕.惊喜………… Web设计是一个不断变化的领域,因此掌握最新的发展趋势及技术动向对设计师来说非常重要.无论是学习新技术,还是寻找免费资源与工具 ...

  9. Dapper - .Net 环境下一个简单对象映射的框架

    本文内容 特点 性能 参数化的查询 List 支持 缓存和非缓存的 readers 多个映射 多个结果 存储过程 Ansi Strings 和 varchar 限制和注意事项 Dapper 能运行在我 ...

  10. iOS编程(双语版) - 视图 - 手工代码(不使用向导)创建视图

    如何创建一个空的项目,最早的时候XCode的项目想到中,还有Empty Application template这个选项,后来Apple把它 给去掉了. 我们创建一个单视图项目. 1) 删除main. ...