循环结构:

  在程序当中总有一些需要反复/重复的执行的代码,假设没有循环结构,那么这段需要重复知心的需要重复执行的代码自然是需要重复编写的,代码无法得到重复使用。所以多数变成语言都是支持循环结构的。将来把需要反复执行的代码片段放到”循环体“,再联合“计算器”,共同控制这段需要反复执行的代码。

基本上所有的编程语言支持的循环包括三种:

for循环

while循环

do...while循环

当前示例主要讲解for循环 ,语法结构:

  for(初始化表达式;布尔表达式;更新表达式){

    需要重复执行的代码片段循环体:【java语句】】

}

for循环的执行过程/执行原理是:初始化表达式、布尔表达式、更新表达式都不是必选的,但是两个分号是必须的

初始化表达式最先执行并且在整个for循环当中只执行一次

布尔表达式必须是true/false 不能是其它值

for的执行过程:

  先执行初始化表达式,并且该表达式只执行一次

  判断布尔表达式的结果是true/false

  布尔表达式true:

    - 执行循环体:

    -执行更新表达式

    -判断布尔表达式是true还是false

      *是true

        -执行循环体

        -执行更新表达式

        -判断布尔表达式的结果是true……

      布尔表达式是false

          -退出

public class ForTest01
{

public static void main(String[] agrs){
for(int i=0;i<10;i++){
System.out.println(i);
}for(int i=0;i<=10;i++){
System.out.println(i);
}
int i=0;
for(;i<=10;i++){
System.out.println("i-->"+i);
}
System.out.println("i-->"+i);
}
}

奇数偶数输出:

public class ForTest01
{

public static void main(String[] agrs){
for(int i=1;i<=10;i+=2){
System.out.println("i-->"+i);
}
for(int i=2;i<=10;i+=2){
System.out.println("i-->"+i);
}

//以下是倒着奇数偶数

for(int j=10;j>0;j-=2){
System.out.println("j-->"+j);

}
for(int j=9;j>0;j-=2){
System.out.println("j-->"+j);

}

//这个是将更新表达式放到后面输出结果是9-1

for(int j=9;j>0;){
System.out.println("j-->"+j);
j--;
}

for(int j=9;j>0;){

j--;
System.out.println("j-->"+j);
}

//更新表达式放置的位置不一样,即使布尔表达式和初始化表达式一样,结果也不一样。

}
}

//从1开始每次递增2,这样的每一个数字都是奇数

for(int i=1;i<=100;i+=2){
System.out.println(i);
}

//从1开始以1递增,每一个数据都进行判断对2求余数

public class ForTest02
{

public static void main(String[] agrs){

for(int i=1;i<=100;i++){
if(i%2 != 0){
System.out.println(i);
}
}

}
}

//所有奇数的和

public class ForTest02
{

public static void main(String[] agrs){

int sum=0;
for(int i=1;i<=10;i++){
if(i%2 != 0){
sum += i;
System.out.println(i);
}

}
System.out.println(sum);

}
}

//另一种简单方法

public class ForTest02
{

public static void main(String[] agrs){

int sum=0;
for(int i=1;i<=10;i+=2){
  sum += i;
  System.out.println(i);

}
  System.out.println(sum);

}
}

//for嵌套for

public class ForTest03
{

public static void main(String[] agrs){

for(int i=1;i<=2;i++){
for(int j=1;j<=10;j++){
System.out.println("j-->"+j);
}
}

for(int i=1;i<=5;i++){

System.out.println("开始");

for(int j=1;j<=2;j++){
System.out.println("j-->"+j);

}
System.out.println("结束");
}

}
}

//99乘法表

public class ForTest03
{

public static void main(String[] agrs){
for(int i=1;i<=9;i++){
for(int j=1;j<=i;j++){
System.out.print(i+"*"+j+"="+i*j+" ");
}
System.out.println();
}

}
}

for循环结构的更多相关文章

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

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

  2. Swift -运算符和循环结构

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #4dbf56 } p.p2 { margin: 0.0px 0. ...

  3. 浅析PHP中for与foreach两个循环结构遍历数组的区别

    遍历一个数组是编程中最常见不过的了,这里跟大家讨论下for和foreach两种方法.用这两种方法执行遍历的场景太多太多了,这里我们只针对以下两个数组作为例子来讨论.所谓管中窥豹,多少能理清一点两者的区 ...

  4. PHP流程控制之循环结构

    计算机程序最擅长的功能之一就是按规定的条件,重复执行某些操作.循环结构可以减少源程序重复书写的工作量,即在给定条件成立时,反复执行某程序段,直到条件不成立为止.给定的条件称为循环条件,反复执行的程序段 ...

  5. python基础之循环结构以及列表

    python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.python IDE的选择 IDE的全称叫做集成 ...

  6. C语言-循环结构及break、continue

    循环结构 --1-- 结构循环 1.1 while循环 1.2 do…while循环 1.3 for循环 --2-- break和continue 2.1 break关键字 2.2 continue关 ...

  7. 黑马程序员——C语言基础 流程控制 选择结构和循环结构

    ---恢复内容开始--- Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)流程控制 1> 顺序结构:默认的流程 ...

  8. Java 第8章 循环结构进阶

    循环结构进阶 什么是二重循环? 二重循环的执行顺序是什么?

  9. luogg_java学习_03_流程控制及循环结构

    本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 程序流程控制 顺序结构 分支结构:if-else,sw ...

  10. C语言中的循环结构与选择结构

    1. 为什么使用循环? 重复执行某段代码 2. while(条件){ 循环体: } 当条件成立的时候就执行循环体,条件不成立,就退出循环,继续执行while后面的语句 3. for ( 初始表达式 : ...

随机推荐

  1. TOMCAT修改默认端口(8080端口)

    在工作中,有可能需要在一台服务器上同时部署两个或两个以上的tomcat(服务器性能够好), 那么就需要修改其中的一个的端口号才能使得两个同时工作,总共需要修改3个地方: 1.首先到安装目录(或者解压目 ...

  2. 005 C/C++ 数据类型_void

    1.void的字面意思是'无类型'.void * 是无类型指针,void * 可以指向任何类型的数据. 2.数据类型的分装: int InitHardEnv(void ** handle); 典型的内 ...

  3. Day14 - Python基础14 事件驱动模型、IO模型

    本节内容: 1:事件驱动模型 2:IO模型前戏准备 3:4种IO模型 1:事件驱动模型 传统的编程是如下线性模式的: 开始--->代码块A--->代码块B--->代码块C---> ...

  4. poj 2431 Expedition 贪心 优先队列 题解《挑战程序设计竞赛》

    地址 http://poj.org/problem?id=2431 题解 朴素想法就是dfs 经过该点的时候决定是否加油 中间加了一点剪枝 如果加油次数已经比已知最少的加油次数要大或者等于了 那么就剪 ...

  5. JAVA中int转String类型有三种方法

    String.valueOf(i) Integer.toString(i) i+"" i+""也就是一个int型的常量.+上个空的字符串,这里牵涉到了strin ...

  6. python进阶之内存模型

    每一个编程语言的背后都有自己独特的内存模型支持,比如最经典的C语言,一个int类型占8字节.那么在python中不区分数据类型,定义一个变量其在内存在占用多少字节呢?python中数据的运算其内存是如 ...

  7. __format__

    目录 一.__format__ 一.__format__ 自定制格式化字符串 date_dic = { 'ymd': '{0.year}:{0.month}:{0.day}', 'dmy': '{0. ...

  8. NRF51822/NRF51802/NRF52832/NRF52810/NRF52811/NRF52840内核对比

    NRF51822的内核为M0,FLASH是256K,RAM是16K,蓝牙BLE4.0/4.2(SDK新版本支持4.2)NRF51802的内核为M0,FLASH是256K,RAM是16K,蓝牙BLE4. ...

  9. vue项目里面使用脚手架实现跨域

    今天在做vue项目的时候,项目在本地,接口数据在阿里云,这就造成了跨域,在网上找了好久,网上大部分的方法都是找到config文件夹下面的index进行修改的,可是我找到的Index却和他们描述的不一样 ...

  10. httpclient超时时间设置及代理设置

    超时时间 设置HttpClient的超时时间,非常有必要性,因为httpclient 默认超时时间很长,自己可以测试一下是多久,设置超时时间否则会影响自己系统的业务逻辑,例如阻塞系统,影响系统的吞吐量 ...