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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

把集合中存储多个Person对象,Person有姓名和年龄,找出年龄最大的
        a,定义一个Person类型的变量, 先记住第一个元素
        b,循环遍历集合
        c,用每一个元素和变量比较年龄, 如果集合中的元素比变量记住的年龄大
        d,用变量记住这个年龄较大的元素
        e,返回变量记住的元素
ArrayList<Person> lis2 = new ArrayList<>();
                        lis2.add(new Person("这个不是最大的",26));
                        lis2.add(new Person("这个也不是最大的",25));
                        lis2.add(new Person("这个还不是最大的",24));
                        lis2.add(new Person("这个!!",27));
                       
                Person pp = lis2.get(0);//获取初始元素值,用来做比较
                        for (Person person : lis2) {//person代表每一个元素值。
                                if (pp.getAge()<person.getAge()) {
                                        pp=person;
                                }
                        }
                        System.out.println(pp.getAge());

ArrayList<Person> lis1 = new ArrayList<>();
                lis1.add(new Person("张宇峰",99));
                lis1.add(new Person("赵润琦",27));
                lis1.add(new Person("泽东",96));
                lis1.add(new Person("请问",23));
               
                int count = 0;//记录遍历次数,相当与普通for循环的  i 记录所引值
                int index = 0;//初始索引
                for (Person person : lis1) {       
                        count++;
                        if (person.getAge()>lis1.get(index).getAge()) {               
                                index = count;
                        }
                       
                }System.out.println(lis1.get(index));

ArrayList<Person> lis1 = new ArrayList<>();
                        lis1.add(new Person("张宇峰",24));
                        lis1.add(new Person("夯老师",34));
                        lis1.add(new Person("张宇",45));
                        lis1.add(new Person("最大的",55));
                int index = 0;
                for (int i = 1; i < lis1.size(); i++) {
                        //System.out.println(lis1.get(i));
                        Person p1 = lis1.get(i);
                        Person p2 = lis1.get(index);
                        if (p1.getAge()>p2.getAge()) {
                                index = i;//将最小元素的索引赋值给index
                        }
                }
                Person p = lis1.get(index);//get(index)就是获取元素
                System.out.println("名字:"+p.getName()+"\n"+"年龄:"+p.getAge());

评分

参与人数 1黑马币 +4 收起 理由
张研老师 + 4 赞一个!

查看全部评分

6 个回复

倒序浏览
我差不多看懂了
回复 使用道具 举报
就是get方法,我觉得你应该用二叉树结构实现
回复 使用道具 举报
theones 发表于 2015-12-10 19:50
就是get方法,我觉得你应该用二叉树结构实现

才学了二叉树 ...
回复 使用道具 举报
回复 使用道具 举报
****给力*****
回复 使用道具 举报
给力,赞一个
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马