A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 木森 于 2015-7-22 22:44 编辑

如题,增强for去普通for在使用上有什么区别

8 个回复

正序浏览
Arron 中级黑马 2015-9-29 02:39:08
7#
高级for循环,使用起来比较方便。代码也比较简单,如果只是为了操作集合中元素的而不使用索引的话,建议用这个。 普通for循环,如果你还需要使用索引进行其它操作的话,建议用这个。
回复 使用道具 举报

必须的,之前总结了一下,正好用上
回复 使用道具 举报
王文辉 发表于 2015-7-21 17:49
1,增强for循环与普通for循环的区别:
增强for循环必须有被遍历的目标(如集合或数组)。
普通for循环遍历 ...

这个 很详细啊
回复 使用道具 举报
1,增强for循环与普通for循环的区别:
增强for循环必须有被遍历的目标(如集合或数组)。
普通for循环遍历数组的时候需要索引。
增强for循环不能获取下标,所以遍历数组时最好使用普通for循环。
2,特点:
书写简洁。
对集合进行遍历,只能获取集合元素,不能对集合进行操作,类似迭代器的简写形式,但是迭代器可以对元素进行remove操作(ListIterator可以进行增删改查的操作)。

3,书写格式:
for(数据类型变量名 :被遍历的集合(collection)或者数组) {
执行语句
}

4,增强for循环使用示例:
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class ForTest {

        public static void main(String[] args) {
                // TODO Auto-generated method stub
                /* 1.普通数组中的使用 */  
        int array[] = { 1,2,3,4,5,6,7,8,9};  
  
        // 增强的for循环  
        for (int item : array) {  
            System.out.println(item);  
        }  
  
        // 普通for循环
        for (int i = 0; i < array.length; i++)  
            System.out.println(array[i]);  
  
        /* 2.二维数组中的使用 */  
        int array2[][] = {{1,2,3}, {4,5,6}, {7,8,9} };  
         
        // 增强的for循环  
        for (int arr[] : array2) {  
            for (int item : arr) {  
                System.out.println(item);  
            }  
        }  
  
        // 普通for循环  
        for (int i = 0; i < array2.length; i++) {  
            for (int j = 0; j < array2[i].length; j++) {  
                System.out.println(array2[i][j]);  
            }  
        }  
  
        /* 3.List中的使用 */  
        List<String> list = new ArrayList<String>();  
        list.add("我");  
        list.add("要");  
        list.add("进");  
        list.add("黑");  
        list.add("马");
         
        // 增强的for循环  
        for (String item : list){  
            System.out.println(item);            
        }  
                  
        //普通for循环
        for (int i = 0; i < list.size(); i++) {  
            System.out.println(list.get(i));  
        }  
  
        //迭代器遍历  
        Iterator<String> it = list.iterator();
        while (it.hasNext()) {  
            System.out.println(it.next());  
        }  
        }

}

点评

很详细,保存备用,多谢了。好人有好报,嘿嘿  发表于 2015-7-21 18:04
回复 使用道具 举报
准备去深圳的android就业班13期。
回复 使用道具 举报
高级for循环,使用起来比较方便。代码也比较简单,如果只是为了操作集合中元素的而不使用索引的话,建议用这个。
普通for循环,如果你还需要使用索引进行其它操作的话,建议用这个。

点评

嗯嗯,多谢!明白了!你也是在学基础吗?打算去多少期?  发表于 2015-7-21 13:05
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马