| 
import java.util.ArrayList;import java.util.List;
 /** JDK5的新特性:自動拆裝箱,泛型,增強(qiáng)for,靜態(tài)導(dǎo)入,可變參數(shù),枚舉
 *
 * 增強(qiáng)for:是for循環(huán)的一種。
 *
 * 格式:
 *   for(元素數(shù)據(jù)類型 變量 : 數(shù)組或者Collection集合) {
 *   使用變量即可,該變量就是元素
 *    }
 *
 * 好處:簡化了數(shù)組和集合的遍歷。
 *
 * 弊端: 增強(qiáng)for的目標(biāo)不能為null。
 * 如何解決呢?對增強(qiáng)for的目標(biāo)先進(jìn)行不為null的判斷,然后在使用。
 */
 public class ForDemo {
 public static void main(String[] args) {
 // 定義一個int數(shù)組
 int[] arr = { 1, 2, 3, 4, 5 };
 for (int x = 0; x < arr.length; x++) {
 System.out.println(arr[x]);
 }
 System.out.println("---------------");
 // 增強(qiáng)for
 for (int x : arr) {
 System.out.println(x);
 }
 System.out.println("---------------");
 // 定義一個字符串?dāng)?shù)組
 String[] strArray = { "林青霞", "風(fēng)清揚(yáng)", "東方不敗", "劉意" };
 // 增強(qiáng)for
 for (String s : strArray) {
 System.out.println(s);
 }
 System.out.println("---------------");
 // 定義一個集合
 ArrayList<String> array = new ArrayList<String>();
 array.add("hello");
 array.add("world");
 array.add("java");
 // 增強(qiáng)for
 for (String s : array) {
 System.out.println(s);
 }
 System.out.println("---------------");
   List<String> list = null;// NullPointerException
 // 這個s是我們從list里面獲取出來的,在獲取前,它肯定還好做一個判斷
 // 說白了,這就是迭代器的功能
 if (list != null) {
 for (String s : list) {
 System.out.println(s);
 }
 }
   // 增強(qiáng)for其實(shí)是用來替代迭代器的//ConcurrentModificationException
 // for (String s : array) {
 // if ("world".equals(s)) {
 // array.add("javaee");
 // }
 // }
 // System.out.println("array:" + array);
 }
 }
 |