九天学会Java,第四天,循环结构
- 变量和数据类型,赋值和输出
- 算术运算
- 选择结构
- 循环结构
- 函数定义,函数调用
- 变量作用域
- 栈,程序运行的基石
- 面向对象
- 异常处理
- 语言提供的公用包
这次我们讲Java的循环结构。循环结构在编程中广泛使用,所以一定要了解好循环结构是怎么用的。举个例子,我们实现一个记账软件,纪录每一天的开销,最后要出一个汇总,本年度花了多少钱。面临这样的case,你总不能第一天+第二天+第三天+。。。第n天这么写吧,写365个加岂不手都抽经了。正确的写法,是用循环结构。
先介绍for循环结构,for循环结构的语法为:
(本图来源网络)
循环结构的流程图如下所示:
再看一个具体的代码例子:
/**
* 本节讲解循环结构
* 同时也复习赋值,算术运算
*/
public class FourthLesson {
public static void main(String[] args) {
/**
* 定义变量n,把100赋值给n
* 定义变量sum,把0赋值给sum
*/
int n = 100;
int sum = 0;
for (int i = 0 /* (1)初始化参数 */; i < n /*(2)循环条件判断*/; i++ /* (4) */) {
/**
* 第一次i=0,满足i<n,执行sum = sum + i
* 更新后sum = 0,
* 执行i++
* 第二次i=1,满足i<n, 执行sum = sum + i
* 更新后sum = 1
* 执行i++
* 第三次i=2,满足i<n, 执行 sum = sum + i
* 更新后sum = 3
* ...
*/
sum = sum + i; /* (3)循环体执行 */
}
/**
* 输出sum的值
*/
System.out.println(sum);
}
}
除了for循环结构,还有while循环结构和do while结构。
while 循环结构
先看代码
/**
* 输出sum的值
*/
System.out.println(sum);
int k = 0; /* (1)初始化参数 */
sum = 0;
while (k < 100 /* (2)判断循环条件 */) {
sum = sum + k; /* (3)执行循环体 */
k++; /* (4)修改参数 */
}
System.out.println(sum);
while 循环结构的之行步骤是(1)(2)(3)(4)
(4)修改参数是必须的,如果不让k自增,会一直满足(2)循环条件,程序就会进入死循环
do while 循环结构
/**
* do while 循环,(2)(3)肯定会执行一次
*/
k = 0; /* (1)初始化参数 */
sum = 0;
do {
sum = sum + k; /* (2)执行循环体 */
k++; /* (3)修改参数 */
} while (k < 100); /* (4)判断循环条件 */
总结
- 三种循环结构,for, while, do while
- do while 肯定会执行循环体一次
- 如果不修改参数,程序有可能一直满足循环条件进入死循环
作业
- 假设今年你年薪10w, 每年涨幅时10%,每年的钱你都存下来,十年之后你的存款是多少
- 用for循环输出一个Z字形
完整章节
九天学会Java,第四天,循环结构的更多相关文章
- 九天学会Java,第三天,选择结构
选择结构 变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 上一节介绍了Java的算术运算,如加减乘除 ...
- Java语法基础(四)----循环结构语句
一.循环结构: 循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则 ...
- 九天学会Java,第五天,函数定义函数调用
变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 什么是函数,为什么有函数,大家可能有这样的疑问. 举 ...
- 九天学会Java,第一天,变量和数据类型,赋值和输出
用9天入门三门编程语言,有可能嘛,尤其是对没有基础的同学来说?对于想学好的编程的人来说,无论从哪一门语言开始入手,语言的本身其实并不是我们最应该的关心的,至少不是作为一个初学者首先关心的. 网络上,网 ...
- 九天学会Java,第二天,算术运算
算术运算 先回顾上次我们提到的编程特性 变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 第一天我们讲 ...
- Java05-Java基础语法(四)循环结构
Java05-Java基础语法(四)循环结构 循环结构(重复/迭代):根据条件重复执行部分语句 1.while循环结构 while(条件表达式){ 循环体语句; } 1)语法:a.while是关键字 ...
- 053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结
053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结 本文知识点: 流程控制知识总结 流程控制知识总结 选择结构语句 循环结构语句 ...
- 052 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 14 Eclipse下程序调试——debug2 多断点调试程序
052 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 14 Eclipse下程序调试--debug2 多断点调试程序 本文知识点: Eclipse下程序调 ...
- 051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试——debug入门1
051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试--debug入门1 本文知识点: 程序调试--debug入门1 程序 ...
随机推荐
- Invert a binary tree 翻转一棵二叉树
Invert a binary tree 翻转一棵二叉树 假设有如下一棵二叉树: 4 / \ 2 7 / \ / \ 1 3 6 9翻转后: 4 / \ 7 ...
- 西电2017ACM网络赛
#include<bits/stdc++.h> using namespace std; typedef long long LL; #define ms(a,x) memset(a,x, ...
- Ubuntu彻底删除/卸载mysql,php,apache
一.卸载删除 mysql 1 sudo apt-get autoremove --purge mysql-server-5.02 sudo apt-get remove mysql-server3 s ...
- (转)Linux系统安装时分区的选择
场景:对于Linux系统的分区总是迷迷茫茫的,还是实践少,基础不牢. 以前初识Linux时,对Linux系统安装时分区的选择,一点都不了解,导致几次没法进行下一步安装,因此就静下心来,专门拿出时间研究 ...
- bazel 测试过程
google的bazel如日中天,尽管我觉得make已经很好用,但是还是尝试一下,记录之. 首先,从 https://github.com/bazelbuild/bazel/releases 下载对应 ...
- iOS开发 MVVM+RAC 的使用
好长一段时间没有敲简书了! 主要是因为一直在跑面试. 终于还是在上海入职了! 由于项目原因最终还是入了MVVM+RAC的坑 下面是正题. Demo效果 使用MVVM+RAC请求网络数据 Reactiv ...
- 任务调度---crontab
1. crontab相当于windows下的任务与计划,可以设定定时任务,周期执行的任务 2. 设置任务调度文件 crontab -e 进入任务界面,添加如下命令 0 2 * * ...
- Android 内存检查
Android 内存检查 本文简单介绍了如何使用 DDMS 和 MAT 工具来对 android 进行内存检查,了解 android 内存的具体占用情况. 步骤1. 使用 DDMS 观察内存的使用情况 ...
- ORACLE - 管理控制文件
在oracle中,控制文件极其重要,如果该文件损坏并在没有备份的情况下,数据库将无法启动,里面的数据也将无法读取恢复,一般情况下,对数据库配置好了以后备份控制文件: 1. 查看控制文件 SQL> ...
- 用Django做一个省份选择器
做一个省份选择器 使用django做后端, mysql数据库, jQuery 列出结构主要的文件, 其它配置比较简单 models.py 因为所有数据的结构基本一致, 把所有省份, 市和区全部存储一张 ...