For循环:
 
  虽然所有循环结构都可以用 while 或者 do...while 表示,但Java提供了另一种语句— —for循环,使一些循环结构变的更加简单。
  for 循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构。
  for 循环执行的次数是在执行前就确定的。语法格式:
  for (初始化; 布尔表达式; 更新) {
  //代码语句
  }
 package com.duan.struct;

 public class ForDemo01 {
public static void main(String[] args) { int a = 1;//初始化条件 while (a <= 100) {//条件判断
System.out.println(a);//循环体
a += 2;//迭代
} System.out.println("while循环结束!"); //初始化//条件判断//迭代
for (int i = 1; i <= 100; i++) {
System.out.println(i);
} System.out.println("for循环结束!"); //死循环
for(;;){ }
}
}
关于For循环有以下几点说明:
1.最先执行初始化步骤。可以声明一种类型,但可以初始化一个或者多个循环控制变量,也可以是空语句。
2.然后,检测布尔表达式的值。如果为 true,循环体被执行。如果为 false,循环终止,开始执行后面的语句。
3.执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)。
4.再次检测布尔值。循环执行上面的过程。
 
好了,接下来做三道题理解一下:
练习1:计算1到100之间的奇数和偶数的和
练习2:用while或for循环输出1-1000之间能被5整除的数,并且每行输出3个
练习3:打印九九乘法表
 package com.duan.struct;

 public class ForDemo02 {
public static void main(String[] args) {
//练习1:计算1到100之间的奇数和偶数的和 int oddSum = 0;
int evenSum = 0; for (int i = 0; i <= 100; i++) {//快捷键100.for
if (i % 2 != 0) {//奇数
oddSum += i;//oddSum = oddSum + i;
} else {//偶数
evenSum += i;
} } System.out.println("奇数的和:" + oddSum);
System.out.println("偶数的和:" + evenSum); }
} 结果:
奇数的和:2500
偶数的和:2550
 package com.duan.struct;

 public class ForDemo03 {
public static void main(String[] args) {
//练习2:用while或for循环输出1-1000之间能被5整除的数,并且每行输出3个 for (int i = 0; i < 1000; i++) {
if (i % 5 == 0) {
System.out.println(i + "\t");// \t一个制表位转义字符
}
if (i % (5 * 3) == 0) {//每行
System.out.println();
//System.out.print("\n"); \n换行转移字符
}
} //println 输出完,换行
//print 输出完,不会换行 }
}
 package com.duan.struct;

 public class ForDemo04 {
public static void main(String[] args) {
//练习3:打印九九乘法表
//1.我们先打印第一列,这个大家都应该会
//2.我们把固定的1再用一个循环包起来
//3.去掉重复项,i<=j
//4.调整样式 for (int j = 1; j <= 9; j++) {//外层控制行 for (int i = 1; i <= j; i++) {//内层控制列
System.out.print(i + "*" + j + "=" + (i * j) + "\t");
} System.out.println();
} }
} 结果:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81

8.for循环及练习的更多相关文章

  1. 【.net 深呼吸】细说CodeDom(8):分支与循环

    有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...

  2. Recurrent Neural Network系列1--RNN(循环神经网络)概述

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

  3. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

  4. 模仿Linux内核kfifo实现的循环缓存

    想实现个循环缓冲区(Circular Buffer),搜了些资料多数是基于循环队列的实现方式.使用一个变量存放缓冲区中的数据长度或者空出来一个空间来判断缓冲区是否满了.偶然间看到分析Linux内核的循 ...

  5. 【JS基础】循环

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

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

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

  7. To Java程序员:切勿用普通for循环遍历LinkedList

    ArrayList与LinkedList的普通for循环遍历 对于大部分Java程序员朋友们来说,可能平时使用得最多的List就是ArrayList,对于ArrayList的遍历,一般用如下写法: p ...

  8. JavaScript单线程和浏览器事件循环简述

    JavaScript单线程 在上篇博客<Promise的前世今生和妙用技巧>的开篇中,我们曾简述了JavaScript的单线程机制和浏览器的事件模型.应很多网友的回复,在这篇文章中将继续展 ...

  9. .NET基础 一步步 一幕幕[循环、逻辑语句块]

    循环.逻辑语句块   好久不写博客了,断更了好几天了,从上周五到今天,从北京到上海,跨越了1213.0公里,从一个熟悉的城市到陌生的城市,还好本人适应力比较好,还有感谢小伙伴的接风咯,一切都不是事,好 ...

  10. Linux进程管理及while循环

    目录 进程的相关概念 进程查看及管理工具的使用 Linux系统作业控制 调整进程优先级 网络客户端工具 bash之while循环 20.1.进程类型 守护进程 daemon,在系统引导过程中启动的进程 ...

随机推荐

  1. 2019-4-6-VisualStudio-2019-如何离线下载

    title author date CreateTime categories VisualStudio 2019 如何离线下载 lindexi 2019-04-06 09:26:11 +0800 2 ...

  2. 机器学习——HMM & CRF

    整理自: https://blog.csdn.net/woaidapaopao/article/details/77806273?locationnum=9&fps=1 HMM CRF HMM ...

  3. C# 对 byte 数组进行模式搜索

    本文告诉大家几个方法从 byte 数组找到对应的相同序列的数组 最简单的方法是进行数值判断,但是代码最少是使用Linq ,效率比较高是使用 Boyer-Moore 算法,下面就告诉大家几个算法的代码 ...

  4. 备战省赛组队训练赛第七场(UPC)

    传送门   日文题解:戳这里

  5. EJB版本

    1999: ejb version 1.1 -- j2ee 1.22001: ejb version 2.0 -- j2ee 1.32003: ejb version 2.1 -- j2ee 1.42 ...

  6. 为何D3D11的几个矩阵需要转置?

    在学习D3D11的时候遇到一个问题,事情是这样的: D3D11引入了常量缓存(const buffer)用来实现数据的高速传输,这块儿buffer是CPU Only Write,GPU Only Re ...

  7. java框架篇---Struts2 本地化/国际化(i18n)(转)

    源地址:https://www.cnblogs.com/oumyye/p/4368453.html 国际化(i18n)是规划和实施的产品和服务,使他们能很容易地适应特定的本地语言和文化的过程中,这个过 ...

  8. Elasticsearch搜索调优

    最近把搜索后端从AWS cloudsearch迁到了AWS ES和自建ES集群.测试发现search latency高于之前的benchmark,可见模拟数据远不如真实数据来的实在.这次在产线的bac ...

  9. redis 的持久化方式

    redis 持久化的两种方式 RDB:RDB 持久化机制,是对 redis 中的数据执行周期性的持久化. AOF:AOF 机制对每条写入命令作为日志,以 append-only 的模式写入一个日志文件 ...

  10. Java正则表达式学习与记录

    转载自:http://www.runoob.com/java/java-regular-expressions.html 正则表达式定义了字符串的模式,用于搜索.编辑或处理文本. 1.正则表达式中字符 ...