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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© tpsu88 中级黑马   /  2013-6-16 19:03  /  1807 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 孙百鑫 于 2013-6-19 09:04 编辑

看了一些增强for循环,不理解!
请具体说一下,__:__冒号两边的东西应该写什么??谢谢!!如这句话我就不太理解,请转译成普通for循环,具体说说怎么变化的!!谢谢谢谢谢谢!
  1. private static String add(int[] arr, int index, int i) {
  2.                 List list = new ArrayList();
  3.                 for(int k : arr){
  4.                         list.add(k);
  5.                 }
  6.                 list.add(index, i);
  7.                 return list.toString();
  8.         }
复制代码

评分

参与人数 1技术分 +1 收起 理由
孙百鑫 + 1 淡定

查看全部评分

6 个回复

倒序浏览
int k:arr

右边arr, 是类似集合的变量, 如数组等,

左边k, 是与右边变量中的元素相同类型的一个变量.

相当于每次从arr中取出一个元素赋值给k, 然后操作k.
回复 使用道具 举报 1 0
for(int k : arr){
                   list.add(k);
  }这个也相当于foreach()循环
左边:右边   
左边是右边集合中的元素。 解释:例如  int k是整形  arr是整形数组,所以k是arr中的数组元素  
希望对你有帮助!

评分

参与人数 1技术分 +1 收起 理由
孙百鑫 + 1 赞一个!

查看全部评分

回复 使用道具 举报 1 0
foreach语句:
格式:for(类型 变量 :数组或Collection集合)

foreach语句与传统for语句相比,有一定局限性:
1,传统for可以完成对语句执行很多次,因为可定义控制循环的条件的增量。
2,foreach语句是一种简写形式,它必须有遍历的目标,该目标要么是集合,要么是数组。
注意:对数组的遍历如果只是获取数组中的元素,可以使用foreach语句,如果对数组的角标进行操作建议使用传统for.

评分

参与人数 1技术分 +1 收起 理由
孙百鑫 + 1 赞一个!

查看全部评分

回复 使用道具 举报 1 0
1.for 你先要给3条件,
foreach 不需要条件,他是自动遍历给定的集合体的所有值
2.foreach循环不能为循环中的变量赋值.
foreach要求所有元素的类型相同,它不需要知道集合总共有多少个。。
3.性能方面:
foreach只是for一个封装而已,内部调用的for
foreach更优雅一些

回复 使用道具 举报
等效于
private static String add(int[] arr, int index, int i) {
                List list = new ArrayList();
                for(int x=0;x<arr.lengh,x++){
                        list.add(arr[x]);
                }
                list.add(index, i);
                return list.toString();
        }



int k:arr

右边arr, 是类似集合的变量, 如数组等,

左边k, 是与右边变量中的元素相同类型的一个变量.

评分

参与人数 1技术分 +1 收起 理由
孙百鑫 + 1

查看全部评分

回复 使用道具 举报 1 0
您需要登录后才可以回帖 登录 | 加入黑马