循环可用来重复执行一条语句或者含有多条语句的语句块。在大多数程序中都会需要重复执行一块语句。

for 循环的基本语法是:

for (表达式1;表达式2;表达式3)
{ 若干语句
}
for语句由关键字for和括号中用分号分割的3个表达式,以及一个复合语句组成,其中的“表达式2”必须是一个求值为boolean型数据的表达式(判断条件),

而复合语句称作循环体。 

for语句的执行规则是:欢迎关注我的博客网站:www.taomaipin.com

(1)计算“表达式1”,完成必要的初始化工作

(2)判断“表达式2”的值,若“表达式2”的值为true,      则进行(3),否则进行(4)。

(3)执行循环体,然后计算“表达式3”,以便改变循环条件,进行(2)。

(4)结束for语句的执行.

比如我想打印1到10这组数字

那么 我要是不用for循环 那么就要写十行
Sytem.out.println(1);
Sytem.out.println(2);
Sytem.out.println(3);....等等

很显然这种方式是不可取的,所以java 给我们提供了for循环来解决上述问题,如下面代码:

public class Test7 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int a=10;
for(int i=1;i<=10;i++){
System.out.println(i);
}

}

}

打印结果:1,2,3,4,5,6,7,8,9,10

JDK1.5 对 for 循环的增强主要针对集合的迭代。遍历集合中的元素,新的 for 循环将不再需要循环变量。当然,类似的规则也适用于数组。

语法规则:for (Type element : Expression) {…}

Type variable 为 Expression 中元素的类型及当前元素

Expression 必须是 java.lang.Iterable 接口的一个实例,或者一个数组

下面的例子,分别演示如何用迭代器的 for 循环和数组的 for 循环:

public void newFor(Collection<String> c) {
for(String element : c) {
System.out.println(element);
}
}

public int sumArray(int array[]) {
int sum = 0;
for(int i : array) {
sum += i;
}
return sum;
}

当然 你也可以把上面的1到10定义成一个数组 在打印出来比如下面代码:

public class Test7 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

int intArray[] ={1,2,3,4,5,6,7,8,9,10};
for(int s:intArray){
System.out.println(s);
}

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

}

里面的两个for循环达到的效果是一样的

欢迎关注我的博客网站:www.taomaipin.com

java入门学习(十四)运算语句for的更多相关文章

  1. java入门学习(十二)运算语句 if switch

    这两天在网上做兼职,耽误了些博客见谅哈 欢迎来我的博客:www.taomaipin.com java中的运算语句而且频繁用到的无法就是条件语句和循环语句,包括if,for,while,switch,b ...

  2. Java开发学习(十四)----Spring整合Mybatis及Junit

    一.Spring整合Mybatis思路分析 1.1 环境准备 步骤1:准备数据库表 Mybatis是来操作数据库表,所以先创建一个数据库及表 create database spring_db cha ...

  3. java web 学习十四(JSP原理)

    一.什么是JSP? JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术. JSP这门技术的最大的特点在于,写jsp就像在写h ...

  4. Java Web入门学习(四)Eclipse与Maven、Tomcat整合配置

    Java Web学习(四)Eclipse与Maven整合配置 一.准备工作 1.Tomcat 8.5.15 2.Maven3.5 3.Eclipse Neon.3 Release (4.6.3) 二. ...

  5. Java Web入门学习(四)Eclipse与Maven、Tomcat整合配置 (重整版并解决问题)

    Java Web学习(四)Eclipse与Maven整合配置 (重整版) 一.准备工作 1.Tomcat 8.5.15 2.Maven3.5 3.Eclipse Neon.3 Release (4.6 ...

  6. 《Java程序设计》十四次作业

    <Java程序设计>十四次作业实验总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结与数据库相关内容. 3. 代码量统计 周次 总代码量 新增代码量 总文件数 新增 ...

  7. Java多线程学习(四)等待/通知(wait/notify)机制

    转载请备注地址:https://blog.csdn.net/qq_34337272/article/details/79690279 系列文章传送门: Java多线程学习(一)Java多线程入门 Ja ...

  8. Elasticsearch7.X 入门学习第四课笔记---- Search API之(Request Body Search 和DSL简介)

    原文:Elasticsearch7.X 入门学习第四课笔记---- Search API之(Request Body Search 和DSL简介) 版权声明:本文为博主原创文章,遵循CC 4.0 BY ...

  9. Java入门学习路线目录索引

    原创 Java入门学习路线目录索引 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/One_ ...

  10. MyBatis基础入门《十四》ResultMap子元素(association )

    MyBatis基础入门<十四>ResultMap子元素(association ) 1. id: >> 一般对应数据库中改行的主键ID,设置此项可以提高Mybatis的性能 2 ...

随机推荐

  1. android MeasureSpec的三个测量模式

    1.MeasureSpec含义 其实可以去看MeasureSpec的文档,里面对MeasureSpec的作用介绍得很清楚.MeasureSpec封装了父布局传递给子布局的布局要求,每个MeasureS ...

  2. MAVEN:不能互相引用

    工程A,工程B,工程C,这三个工程:C依赖B,B依赖A,这是没有问题的. 但是不能A依赖B,B又依赖A,这是不允许的.

  3. URL传递的参数是UTF-8编码,在打开的页面正常显示(GB2312)的方法

    URL传递的参数采用的是UTF-8编码,在打开的子页面中显示乱码, URL传递的地址形如:http://localhost/test.aspx?orgname=%E5%8B%**%**%**%**&a ...

  4. 【LOJ】#2278. 「HAOI2017」字符串

    题解 好神仙的题啊 感觉转二维平面能想到,算重复情况的方法真想不到啊 通过扒stdcall代码获得的题解QAQQQQ 我们先把\(p_i\)正串反串建出一个AC自动机来 然后我们把s串放在上面跑匹配, ...

  5. ModelDriven 和 Preparable 拦截器

    Params 拦截器 Parameters 拦截器将把表单字段映射到 ValueStack 栈的栈顶对象的各个属性中. 如果某个字段在模型里没有匹配的属性, Param 拦截器将尝试 ValueSta ...

  6. PHP编辑器分享

    Sublime 1 .安装了追踪插件,ctrl+鼠标左键点击PHP函数跳到函数声明的位置. 2.已汉化 链接:http://pan.baidu.com/s/1hs5qonE 密码:b8fw 相关文章: ...

  7. linux设置最大打开文件数

    一.查看当前用户对进程打开文件最大数的限制 $ ulimit -a | grep open 二.系统对进程打开文件最大数是如何限制的 先来看man的一段解析: /proc/sys/fs/file-ma ...

  8. vue播放video插件vue-video-player实现hls, rtmp播放全过程

    1.安装插件 1 npm install vue-video-player -S 2.配置插件 在main.js里添加 1 import VideoPlayer from 'vue-video-pla ...

  9. q.size()

    在队列中,q.empty()比q.size()要慢,如果可能就用q.size(); 比如spfa的 while(q.size()>0) better than while(!q.empty())

  10. JSONObject 自定义过滤配置

    一.自定义过滤器说明 PropertyPreFilter 根据PropertyName判断是否序列化  PropertyFilter 根据PropertyName和PropertyValue来判断是否 ...