032- for循环语句
问题
请在控制台里面打印10次HelloWorld。
这时可能你会这么写:
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
好吧,如果要打印10000次呢?累不死你才怪。
这时就需要使用for循环语句来帮我们解决了。
语法
for(初始化表达式;条件表达式;循环后的操作表达式) {
循环体;
}
例子:
public class json
{
public static void main(String[]args){ //初始化i的值为0;只要i<10则循环一次打印语句,每循环一次,i自增1.
for(int i =0;i<10;i++){ System.out.println("hello world");
} }
}
执行过程:
1.执行初始化语句,并且在整个循环过程里面只执行一次
2.执行判断条件语句,看其返回值是true还是false
* 如果是true,就继续执行
* 如果是false,就结束循环,整个流程结束
3.执行循环体语句
4.执行循环后的操作表达式
5.程序回到步骤2继续。
for循环中的变量
在for循环中定义的变量只能在循环内部访问和使用,循环外是无法访问和使用的。
for(int i=0;i<10;i++){
System.out.println("Hello");
}
//报错,在循环外无法访问和使用i
System.out.println(i);
因此下面代码是可以正常执行的:
死循环
倘若for循环里面的循环体只有一行代码,则大括号可以省略,但是不建议省略,最好写上。
如果for循环编写不当,可能会造成死循环,程序永远不会停止,在编写程序时一定要避免,下面就是一个死循环。
public class json
{
public static void main(String[]args){ for(;;){ System.out.println("test");
} }
}
嵌套for循环
for循环语句还可以嵌套使用
public class json
{
public static void main(String[]args){ for(int i=5;i>0;i--){
//因为该for循环是在上面for循环的内部,所以是可以访问变量i的
for(int j=0;j<i;j++){
System.out.print(j+" ");
} //换行
System.out.println(); } }
}
运行结果:
1.计算1-100所有的奇数求和
1.在for循环里面加上if语句来判断当前循环的数字是否为奇数
public class json
{
public static void main(String[]args){ int sum = 0;
for (int i =1; i<=900;i++ )
{
if(i%2!=0){ //奇数
//追加
sum+=i; }
} System.out.println(sum); }
}
2.在屏幕中打印九九乘法表
2.九九乘法表一共要输出9行,首先写一个for循环来控制行数:
for (int i = 1; i <= 9; i++) {
System.out.println(i);
}
接下来比如我要输出九九乘法表的第一行,即1 * 1 = 1,写一个for循环:
for(int j=1; j<=1; j++){
System.out.print(1 + "*" + j + "=" +1*j + " ");
}
九九乘法表的第二行,即2*1=2, 2 * 2=4
for(int j=1; j<=2; j++){
System.out.print(2 + "*" + j + "=" +2*j + " ");
}
后面依次类推,可以发现需要修改的地方都是固定的,可以将上面的for循环修改为下面:
int i = 9;
for(int j=1; j<=i; j++){
System.out.print(i + "*" + j + "=" +i*j + " ");
}
只需要将i修改为要输出的行数就可以,而这个变量i其实可以从第一个for循环中获取,将两个循环进行嵌套:
//外层for循环控制换行,变量i是行号
for (int i = 1; i <= 9; i++) {
//System.out.println(i);
// 输出规律:
// 第1行,输出1个
// 第2行,输出2个
// 第3行,输出3个
// ...
// 第9行,输出9个
// 第i行,输出i个
for (int j = 1; j <= i; j++) {
// 这里不要换行
System.out.print(i + "*" + j + "=" + i * j + " ");
}
// 注意:上面的for循环结束之后表示一行输出结束了,换行
System.out.println();
032- for循环语句的更多相关文章
- 【python之路4】循环语句之while
1.while 循环语句 #!/usr/bin/env python # -*- coding:utf-8 -*- import time bol = True while bol: print '1 ...
- python之最强王者(3)——变量,条件、循环语句
1.Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的 ...
- #9.5课堂JS总结#循环语句、函数
一.循环语句 1.for循环 下面是 for 循环的语法: for (语句 1; 语句 2; 语句 3) { 被执行的代码块 } 语句 1 在循环(代码块)开始前执行 语句 2 定义运行循环(代码块) ...
- 详解Python中的循环语句的用法
一.简介 Python的条件和循环语句,决定了程序的控制流程,体现结构的多样性.须重要理解,if.while.for以及与它们相搭配的 else. elif.break.continue和pass语句 ...
- 【java开发】分支语句、循环语句学习
一.Java分支语句类型 if-else 语句 switch 关于if-esle语句可以拆分为三种 if语句 if(条件){语句块;} if-else语句if(条件语句){语句块;} if-else ...
- python3循环语句while
Python的循环语句有for和while语句,这里讲while语句. Python中while语句的一般形式: while 条件判断 : 语句 需要注意冒号和缩进.另外,注意Python中没有do. ...
- 20.SqlServer中if跟循环语句
--if语句declare @i int begin print @i end else --循环语句 declare @i int begin insert into grade(classname ...
- Python学习【第五篇】循环语句
Python循环语句 接下来将介绍Python的循环语句,程序在一般情况下是按顺序执行的. 编程语言提供了各种控制结构,允许更复杂的执行路径. 循环语句允许我们执行一个语句或语句组多次. Python ...
- iOS -Swift 3.0 -for(循环语句用法)
// // ViewController.swift // Swift-循环语句 // // Created by luorende on 16/12/08. // Copyright © 2016年 ...
- Python--While循环语句
Python While循环语句 Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务.其基本形式为: while 判断条件: 执行语句 ...
随机推荐
- EF获取数据库表名和列名
EF获取数据库表名和列名 新建 模板 小书匠 /// <summary> /// 通过当前DBContext上下文获取对应数据库中所有得表 /// </summary> ...
- 力扣896. 单调数列-C语言实现-简单题
题目 传送门 文本 如果数组是单调递增或单调递减的,那么它是单调的. 如果对于所有 i <= j,A[i] <= A[j],那么数组 A 是单调递增的. 如果对于所有 i <= j, ...
- 后端程序员之路 43、Redis list
Redis数据类型之LIST类型 - Web程序猿 - 博客频道 - CSDN.NEThttp://blog.csdn.net/thinkercode/article/details/46565051 ...
- AOP +FreeSql 跨方法异步事务
AOP +FreeSql 跨方法异步事务 Autofac.Extensions.DependencyInjection Autofac.Extras.DynamicProxy Castle.Core. ...
- 解决springboot项目打成jar包部署到linux服务器后上传图片无法访问的问题
前言:目前大三,自己也在学习和摸索的阶段.在和学校的同学一起做前后端分离项目的时候,我们发现将后端打包成jar,然后部署到服务器中通过java -jar xxx.jar运行项目以后,项目中存在文件上传 ...
- LeetCode-祖父节点值为偶数的结点值之和
祖父节点值为偶数的结点值之和 LeetCode-1315 这题稍微难度有点大,但是仔细思考还是可以找到思路的. 因为只需要找到祖父节点这最上两层,所以可以带一个参数记录一下祖父节点是否是偶数,以及父节 ...
- IDEA的下载、安装与破解
IDEA的下载.安装与破解 下载地址:https://www.jetbrains.com/idea/download/#section=windows 建议下载2018.2版本,方便破解 安装 一直下 ...
- WPF 基础 - Binding 的 数据更新提醒
WPF 作为一个专门的展示层技术,让程序员专注于逻辑层,让展示层永远处于逻辑层的从属地位: 这主要因为有 DataBinding 和配套的 Dependency Property 和 DataTemp ...
- python基础学习之集合set
.集合:set 特点:无序,不可重复(自动去重),可更改,可以与元组.列表互相转换 格式:s = {'x','y','z'} 转换:(转回用set) s = {'x','y','z'} ...
- 如何对shell脚本中斜杠进行转义?
1.在编写shell脚本时,经常会遇到对某个路径进行替换,而路径中包含斜杠(/),此时我们就需要对路径中涉及的斜杠进行转义,否则执行失败.具体示例如下: 需求描述: 将sjk目录下的test文件中的p ...