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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 唐林渊 黑马帝   /  2012-3-22 18:07  /  1548 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package cn.itcast.excise;

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

import cn.itcast.day12.Person;

public class exercise3 {

        public static void main(String[] args) {
                List<Person> list =new ArrayList<Person>();
                list.add(new Person("张三", 19));
                list.add(new Person("李四",22));
                list.add(new Person("王五",19));
                list.add(new Person("赵六",21));
                findMax(list);
        }
        /*
         * 3.查找List<Person>中年龄最大的Person返回
         *                 定义一个Person类型的变量, 用来记住年龄最大的Person, 最初默认是记住0号
         *                 循环遍历, 判断每个Person的年龄, 如果比变量记住的大, 那么变量就记住这个Person
         *                 循环之后将变量返回
         */       
        public static void findMax(List<Person> list){
                Person max=list.get(0);
                for(Person p:list)                                              /////////////////////求教   这个地方为什么用for(List p:list)  也可以  ??   一个是泛型一个是集合类型 这个有什么区别,是
                        if(max.getAge()<p.getAge())                                                                                                                                                                      不是一样的????
                                max=p;
                System.out.println(max);
        }
}

评分

参与人数 1技术分 +1 收起 理由
房宝彬 + 1

查看全部评分

3 个回复

倒序浏览
1,集合的泛型是管理对象类型的;你不符合类型规范,就不让你编译通过,让编译器及时提示;
2,增强for循环,是取出元素的工具,跟泛型无关;
哥们,泛型和增强for循环都是JDK1.5的新特性;你是否思考过这两个新特性的由来和意义呢?

评分

参与人数 1技术分 +1 收起 理由
房宝彬 + 1

查看全部评分

回复 使用道具 举报
可以?我没看错~~~
反正我的是不可以~~~
回复 使用道具 举报
增强性for循环
for (Person p : list){
//Person 为集合的类型
}
张孝祥高新技术中有讲到增强性for循环,你还是认真看看吧。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马