黑马程序员技术交流社区

标题: 那System.out.println(r);怎么理解? [打印本页]

作者: 朝着梦想使劲冲    时间: 2015-9-17 09:30
标题: 那System.out.println(r);怎么理解?
package shuji.java1;
import java.util.*;
public class Lottery {
        public static void main(String[] args) {
                Scanner in =new Scanner(System.in);
                System.out.println("How many?");
                int k=in.nextInt();
                System.out.println("What is?");
                int n=in.nextInt();
               
                int [] numbers= new int[n];
                for (int i = 0; i < numbers.length; i++) {
                        numbers=i+1;
                }
               
                int [] result=new int[k];
                for (int i = 0; i < result.length; i++) {
                        int r=(int) (Math.random()*n);
                        result=numbers[r];
                        numbers[r]=numbers[n-1];
                        n--;
                }
               
                Arrays.sort(result);
                System.out.println("better");
                for(int r:result)
                        System.out.println(r);
        }

}
最后两行for(int r:result)
                        System.out.println(r);
的for(int r:result)理解为for(int r=0;r<result.length;r++)
System.out.println(r);怎么理解?


作者: 水果牛牛    时间: 2015-9-17 10:31
for(int r:result){}代表的是
for(int i=0;i<result.length;i++){
            int r=result[i];
}
也就是说r就是从result依次取出的元素,并不是你理解的循环变量。
作者: 朝着梦想使劲冲    时间: 2015-9-17 14:56
水果牛牛 发表于 2015-9-17 10:31
for(int r:result){}代表的是
for(int i=0;i

明白了,谢谢你!
作者: 水果牛牛    时间: 2015-9-18 19:41

不用谢,大家互相帮忙
作者: beyond1337    时间: 2015-9-18 20:06
这是面向对象吗?还没学到!
作者: 朝着梦想使劲冲    时间: 2015-9-22 13:21
beyond1337 发表于 2015-9-18 20:06
这是面向对象吗?还没学到!

是最后那两行代码,是简写!
作者: 朝着梦想使劲冲    时间: 2015-9-22 13:22
水果牛牛 发表于 2015-9-18 19:41
不用谢,大家互相帮忙

                            
作者: 楼夜雪    时间: 2015-9-22 13:54
打印输出r
作者: ln0491    时间: 2015-9-22 14:02
学习了。。。。。。。。。。。
作者: 朝着梦想使劲冲    时间: 2015-9-24 08:31

哥们,你牛。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2