问题

请在控制台里面打印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循环语句的更多相关文章

  1. 【python之路4】循环语句之while

    1.while 循环语句 #!/usr/bin/env python # -*- coding:utf-8 -*- import time bol = True while bol: print '1 ...

  2. python之最强王者(3)——变量,条件、循环语句

    1.Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的 ...

  3. #9.5课堂JS总结#循环语句、函数

    一.循环语句 1.for循环 下面是 for 循环的语法: for (语句 1; 语句 2; 语句 3) { 被执行的代码块 } 语句 1 在循环(代码块)开始前执行 语句 2 定义运行循环(代码块) ...

  4. 详解Python中的循环语句的用法

    一.简介 Python的条件和循环语句,决定了程序的控制流程,体现结构的多样性.须重要理解,if.while.for以及与它们相搭配的 else. elif.break.continue和pass语句 ...

  5. 【java开发】分支语句、循环语句学习

    一.Java分支语句类型 if-else 语句 switch 关于if-esle语句可以拆分为三种 if语句 if(条件){语句块;} if-else语句if(条件语句){语句块;} if-else ...

  6. python3循环语句while

    Python的循环语句有for和while语句,这里讲while语句. Python中while语句的一般形式: while 条件判断 : 语句 需要注意冒号和缩进.另外,注意Python中没有do. ...

  7. 20.SqlServer中if跟循环语句

    --if语句declare @i int begin print @i end else --循环语句 declare @i int begin insert into grade(classname ...

  8. Python学习【第五篇】循环语句

    Python循环语句 接下来将介绍Python的循环语句,程序在一般情况下是按顺序执行的. 编程语言提供了各种控制结构,允许更复杂的执行路径. 循环语句允许我们执行一个语句或语句组多次. Python ...

  9. iOS -Swift 3.0 -for(循环语句用法)

    // // ViewController.swift // Swift-循环语句 // // Created by luorende on 16/12/08. // Copyright © 2016年 ...

  10. Python--While循环语句

    Python While循环语句 Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务.其基本形式为: while 判断条件: 执行语句 ...

随机推荐

  1. 用代码来实践Web缓存

    Web缓存是可以自动保存常见文档副本的HTTP设备.当Web请求抵达缓存时,如果本地有"已缓存的副本",就可以从本地存储设备而不是原始服务器中提取这个文档. 上面是<HTTP ...

  2. 看完我的笔记不懂也会懂----less

    目录 Less学习 语法篇 注释 变量 映射(Maps) @规则嵌套和冒泡 less中的嵌套规则 less中的混合 less的运算 extend延伸/继承 less忽略编译(转义) 导入(Import ...

  3. Elasticsearch精进之路:elasticsearch-head插件使用教程

    一.elasticsearch-head插件的作用 ealsticsearch是一个分布式.RESTful 风格的搜索和数据分析引擎,所有的数据都是后台服务存储着,类似于Mysql服务器,因此如果我们 ...

  4. 【转载】Java泛型详解

    [转载]http://www.importnew.com/24029.html 对java的泛型特性的了解仅限于表面的浅浅一层,直到在学习设计模式时发现有不了解的用法,才想起详细的记录一下. 本文参考 ...

  5. SVN同步方式举例 ​​​​ FreeBSD

    FreeBSD base  默认安装了svnlite 不需要单独安装SVN 软件 svnlite co svn.freebsd.org/ports/head/ /usr/local/ports -r5 ...

  6. Java中的名称命名规范:

    Java中的名称命名规范:(不遵守,也不会出现编译的错误) 包名:多单词组成时所有字母都小写:xxxyyyzzz 类名.接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz 变量名.方法名: ...

  7. python并发利器tomorrow

    tomorrow是我最近在用的一个爬虫利器,该模块属于第三方的模块,使用起来非常的方便,只需要用其中的threads方法作为装饰器去修饰一个普通的函数,既可以达到并发的效果,本篇将用实例来展示tomo ...

  8. IPFS是什么?IPFS与Filecoin有什么关系?

    Filecoin 基于 IPFS 的去中心化存储网络,是 IPFS 上唯一的激励层,是一个基于区块链技术发行的通证.Filecoin 翻译过来就是文件币,简称为 FIL. 在 FIlecoin 网络中 ...

  9. 记录Java注解在JavaWeb中的一个应用实例

    概述 在学习注解的时候,学了个懵懵懂懂.学了JavaWeb之后,在做Demo项目的过程中,借助注解和反射实现了对页面按钮的权限控制,对于注解才算咂摸出了点味儿来. 需求 以"角色列表&quo ...

  10. 提高ASP.NET Web应用性能的24种方法和技巧

    那性能问题到底该如何解决?以下是应用系统发布前,作为 .NET 开发人员需要检查的点. 1.debug=「false」 当创建 ASP.NET Web应用程序,默认设置为「true」.开发过程中,设置 ...