黑马程序员_for循环及增强for循环_java
------- android培训、java培训、期待与您交流! ----------
网上关于for循环的理解和说明有很多, 写的也很详细到位, 只是觉得对于初学者来说, 有些地方还是不好懂, 我希望能够以更容易理解的语言来阐述和学习这部分知识, 让大家在学习的时候有更大的收获. 有什么地方写得不够好的, 希望帮我指出来, 谢谢了:)
for循环的简介
for循环是编程语言中的语句之一,是一种为简化代码书写减少编程者的工作量和提高代码可读性优化代码结构的工具.
for循环是开界的。它的一般形式为:for(<初始化表达式>; <条件表过式>; <变量表达式>){需要执行的语句};初始化表达式通常是一个赋值语句,它用来给循环控制变量赋一个初值,使得循环有一个开始; 条件表达式是一个关系表达式,决定着什么时候退出循环;而变量表达式则是定义着循环控制变量每循环一次后按什么方式变化.切这三个表达式之间用";"分开.
for (int i = 0; i < 100; i++) // 说明: for(初始化表达式;条件表过式;变量表达式)
{ // {
System.out.println("hello,world!"); // 需要执行的语句;
} // }
注:这里小小的解释一下:
注意事项:
让我们来了解一下for循环语句中的一些注意事项:省略了"初始化表达式" 表示不对循环控制变量赋初值;省略了"条件表达式", 则不作其他处理时便成为了死循环,即程序会无休止的运行下去,直到系统资源耗尽; 省略了"变量表达式", 则不对循环控制变量进行操作, 这时可在语句体中加入修改循环控制变量的语句.
3...for循环可有有多层嵌套:
这里举个小例子:
public static void Function1() //定义一个function的功能
{ //{
int m,n; // 定义两个变量m和n
for(m=0;m<6;m++) // 写一个由m控制行数的外循环
{ // {
for(n=0;n<10;n++) // 写一个由n控制列数的内循环
{ // {
System.out.print("*"); // 打印:"*";
} // }
}System.out.println(); // } (这个语句这里的作用是换行,通过仔细观察
} //} 可以发现与上一行的打印语句相差两个字母"ln")上面代码中打印的结果是这样的:
**********
**********
**********
**********
**********
**********
这是一个矩形,也可以通过增加或者修改变量来改变打印的形状.当然,for的嵌套循环还可以有多层 这是通过嵌套for循环扩展得到的功能,
for循环的集中常用形态
当然for循环的用法并不局限于这一种,由于for的定义里()内的三个表达式中,除了中间的表达式必须要产生布尔型,并没有对其余的两段的表达式有什么限制,因此还可以有其他的用法. 这里我借助互联网搜集并总结了几种for的常见用法,
遍历:
Java程序中,要逐一遍历某一个数组或者Collection中的元素的时候会有很多方法, 一般情况下使用for循环.
int[] integers = {1,2,3,4}; //建立一个数组
int i,j; //定义两个变量i,j
for(int j = 0; j<integers.length;j++) //开始遍历
{ //{
int i = integers[j]; // in i = integer[s];
} //}
System.out.println(i); //打印元素 i;
这是常见的遍历数组的形式, 那么Collection呢?
String[] strings = {"A","B","C","D"}; //定义一个数组;
Collection stringList = java.until.Arrays.asList(strings); //建立一个Collection;
for(iterator=stringList.iterator();itr.hasNext();) //开始遍历
{ //{
Object str = itr.next(); // Object str = itr.next();
System.out.println(str); //打印出来
} //}
for(循环变量类型 循环变量名称 : 要被遍历的对象)
{
循环语句;
}
来看看增强for循环的实例吧:
int[] integers = {1,2,3,4}; //定义一个数组
for(int m = 0;m<integers.length;m++); //开始遍历
{ //{
System.out.println(integers[m]); // 打印;
} //}
int[] integers = {1,2,3,4}; //建立一个数组
for (int i : integers) //开始遍历
{ //{
System.out.println(i); // 打印遍历出的 1,2,3,4
} //}
String[] strings = {"A","B","C","D"}; //定义一个数组
Collection stringList = java.utill.Arrays.asList(strings); //建立Collection
for(iterator n = list.iterator();n.hasNext();) //开始遍历
{ //{
System.out.println(n.next()); // 打印;
} //}
String[] strings ={"A","B","C","D"}; //定义数组
Collection list = java.until.Arrays.asList(strings); //建立Collection
for(Object str : list) //开始遍历
{ //{
System.out.println(str); // 打印;
} //}
从对比中我们可以发现增强for循环要比之前的简单的多, 便利的多. 而且编译器在识别增强for循环的时候会自动识别为前一个版本的形式,所以性能上面不用担心会出问题.
另外利用互联网我还发现了一篇名为“java种for循环的6种写法”,挺值得一看的,原理上都是大同小异,感兴趣的朋友可以看看。下面附上网址:
http://www.360doc.com/content/11/0527/11/987036_119734904.shtml
本文深入解析Java中的for循环概念及其使用方法,包括基本语法、注意事项、常见用法以及增强for循环的介绍,并通过实例展示了如何在数组和集合遍历中的应用。
395

被折叠的 条评论
为什么被折叠?



