`
十井_
  • 浏览: 54652 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java5特性:增强FOR循环

阅读更多
遍历数组
语法:
--------new---------
for(Type value:array) {
    expression value;
}
--------old---------
for(int i = 0;i < array.length; i++){
int n = arrar[i];
do something;
}

遍历集合
注意:for-each循环遍历的集合必须是实现Iterable接口
语法:
--------new---------
for (Type value:Iterable) ...{
    expression value;
}
--------old---------
for(Iterator iter = list.iterator(); iter.HasNext();){
Object o = iter.next();
do something;
}

例子:
遍历数组
求一个数组中所有的值的和.
----------------old-----------------
void testArrayOld(){
   int[] arrayOld = {1,2,3,4};
   int totalOld = 0;
   for(int i = 0;i < arrayOld.length;i++){
       totalOld += arrayOld[i];
   }   
   System.out.println(totalOld);
}

----------------new-----------------
void testArrauNew(){
    int[] array = {1,2,3,4};
    int totalNew = 0;
    int i = 0;
    for(int n:array){
    //循环变量(i)不可见;n为循环变量
    totalNew += n;
    }
    System.out.println(totalNew);
}


遍历集合
拼接list中的所有字符。
----------------old-----------------
void testListOld(){
    List listOld = new ArrayList();
    listOld.add("Agile");
    listOld.add(" ");
    listOld.add("Java");
    String strOld = "";
    for(Iterator iter = listOld.iterator();iter.hasNext();){
    String strTemp = (String)iter.next();
    strOld += strTemp;
    }
    System.out.println(strOld);
}

----------------new-----------------
void testListNew(){
     List<String> listNew = new ArrayList<String>();
     listNew.add("Agile");
     listNew.add(" ");
     listNew.add("Java");
    String str = "";
    for(String strTemp:listNew){
     str += strTemp;
    }
    System.out.println(str);
}


import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;


public class TestFor {
	public static void main(String[] args) {
		//old 数组		
		int[] arrayOld = {1,2,3,4};
	    int totalOld = 0;
	    for(int i = 0;i < arrayOld.length;i++){
	    	totalOld += arrayOld[i];
	    }    
	    System.out.println(totalOld);

	    //new数组		
	    int[] array = {1,2,3,4};
	    int totalNew = 0;
	    int i = 0;
	    for(int n:array){
	    	//循环变量(i)不可见;n为循环变量
	    	totalNew += n;
	    }
	    System.out.println(totalNew);
		
	    //old list
		List listOld = new ArrayList();
		listOld.add("Agile");
		listOld.add(" ");
		listOld.add("Java");
	    String strOld = "";
	    for(Iterator iter = listOld.iterator();iter.hasNext();){
	    	String strTemp = (String)iter.next();
	    	strOld += strTemp; 
	    }
	    System.out.println(strOld);
		
	    //new list
		List<String> listNew = new ArrayList<String>();
		listNew.add("Agile");
		listNew.add(" ");
		listNew.add("Java");
	    String str = "";
	    for(String strTemp:listNew){
	     	str += strTemp; 
	    }
	    System.out.println(str);
	}	
}
2
2
分享到:
评论

相关推荐

    JDK1.5中增强for循环

    JDK1.5新特性中的最重要的一点。让你彻底明白增强for循环的强大和方便

    Java理论与实践:在JDK早期版本中使用Java 5的语言特性

    本文介绍了Java 5中添加的语言特性--泛型、枚举、注释、自动装箱和增强的for循环--不需要修改JVM的指令集,几乎全部是在静态编译器和类库中实现的。对于不能使用Java 5语言特性的开发人员,有多种方法可以使他们使用...

    Java 高级特性.doc

    2.可变参数与for循环增强 这个是一般的用法: public static void loop(String[] args){ for(int i=0;i;i++) { System.out.println(args[i]); } } 这个是JDK 增加的新特性的用法! public static void loop(int ...

    JAVA5新特性介绍.zip

    JDK1.5新特性:自动拆装箱、泛型、增强for循环、静态方法导入、可变参数、枚举

    JAVA jdk1.5的新特性

    1.增强的for循环【foreach{}迭代数组或集合】 格式:for(变量的类型 变量名:集合变量名 ){} 注意:集合变量可以是数组或实现了Iterable接口的集合类 2.静态导入(这样调用一个静态方法的时候就不需要【类名....

    Java基础知识点总结.docx

    增强for循环 85 可变参数(...) 86 枚举:关键字 enum 86 自动拆装箱 86 泛型 87 &lt;java.lang&gt;System 89 &lt;java.lang&gt;Runtime 90 &lt;java.lang&gt;Math 90 &lt;java.lang&gt;.Date:日期类,月份从0—11 92 &lt;java.lang&gt; Calendar...

    jdk1.5的新特性

    从增强的for循环到诸如泛型(generic)之类更复杂的特性,都将很快出现在您所编写的代码中。我们刚刚完成了一个基于Java 5.0的大型任务,而本文就是要介绍我们使用这些新特性的体验。本文不是一篇入门性的文章,而是对...

    java基础案例与开发详解案例源码全

    4.5 增强for循环116 4.6 本章练习117 第5章 5.1 面向过程的设计思想120 5.2 面向对象的设计思想120 5.3 抽象121 5.3.1 对象的理解121 5.3.2 Java抽象思想的实现122 5.4 封装124 5.4.1 对象封装的概念理解124 5.4.2 ...

    JAVA基础课程讲义

    增强for循环 114 思考作业 114 上机作业 115 第六章 常用类的使用 117 基本数据类型的包装类 117 包装类基本知识 117 包装类的用途 118 自动装箱和拆箱?autoboxing,unboxing 119 字符串相关类(String、 ...

    java学习笔记 初学者必读

    17.2. 增强的for循环 17-66 17.3. 自动装箱和自动拆箱 17-69 17.3.1. 在基本数据类型和封装类之间的自动转换 17-69 17.4. 类型安全的枚举 17-70 17.5. 静态引入 17-71 17.6. C风格的格式化输出 17-72 17.7. Building...

    仿知乎java源码-Java2Cpp-Translator:Java到C++转换器

    仿知乎java源码SevenBobcat-Java2CppTranslator 翻译器支持将受限版本的 Java 翻译成 C++。 源语言是 Java 的受限版本,没有高级功能,如嵌套类、匿名类、接口、枚举、注释、泛型、增强的 for 循环、可变参数、装箱/...

    java高级编程必须知道的集合详细讲解

    集合框架的迭代和遍历: 解释如何使用迭代器和增强 for 循环来遍历集合中的元素。讲解如何避免在遍历过程中发生并发修改异常。 集合框架的性能和选择: 探讨集合框架中各种实现类的性能比较,讲解如何根据需求选择...

    corejava培训文档

    17.2. 增强的for循环 17.3. 自动装箱和自动拆箱 17.3.1. 在基本数据类型和封装类之间的自动转换 17.4. 类型安全的枚举 17.5. 静态引入 17.6. C风格的格式化输出 17.7. Building Strings(StringBuilder类) 17.8....

    Java典型模块

    3.1.3 增强版for循环 3.1.4 基本数据的拆、装箱操作(autoboxing和unboxing) 3.2 枚举 3.2.1 枚举的实现原理 3.2.2 枚举的简单应用 3.2.3 枚举的高级特性 3.3 反射 3.3.1 反射的基石——Class类 3.3.2 反射的基本...

    corejavaNoteBook

    17.2. 增强的for循环 17-66 17.3. 自动装箱和自动拆箱 17-69 17.3.1. 在基本数据类型和封装类之间的自动转换 17-69 17.4. 类型安全的枚举 17-70 17.5. 静态引入 17-71 17.6. C风格的格式化输出 17-72 17.7. Building...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例034 使用for循环输出杨辉三角 43 实例035 使用嵌套循环在控制台上输出 九九乘法表 44 实例036 用while循环计算1+1/2!+1/3!…1/20! 45 实例037 for循环输出空心的菱形 46 实例038 foreach循环优于for循环 47 实例...

Global site tag (gtag.js) - Google Analytics