黑马程序员技术交流社区

标题: List中可否存贮除基本包装类以外的其他对象呢 [打印本页]

作者: 亚男    时间: 2012-4-26 20:52
标题: List中可否存贮除基本包装类以外的其他对象呢
List中可以存放什么对象呢?ArrayList除了基本包装类可不可以存放像其他东西,比如自定义一个学生类包含姓名、年龄、专业属性。add()元素时可否直接为学生类赋值?

作者: chenwei    时间: 2012-4-26 20:57
可以,可以是任何引用数据类型,八种基本类型就转换成包装类型就可以
作者: 光sail    时间: 2012-4-26 21:17
list对象可以放置java内置的对象和自定义的对象,八种基本数据类型要进行包装类才能放入
作者: 小鹿叙鹿    时间: 2012-4-26 21:54
Collection集合(List)集合是专门为存储对象而设计的,也就是说基本数据类型是不被允许的存入的,但是由于基本数据类型有包装类,可以通过装箱的动作把基本数据类型
转换成原始类型进行存储。
不可以为学生类直接赋值,除非学生类用的构造函数是带参数的构造函数。
作者: 张成龙    时间: 2012-4-26 21:55
List是就用于存储对象的
作者: 王敏NO.09    时间: 2012-4-26 21:58
当然可以,集合本来就是用于存储对象,可以存储不同类型的对象
作者: 孙天    时间: 2012-4-27 10:37
List当然可以存对象,我写个arraylist你就知道了
public class ArrayListTest2 {

        /**
         * @param args
         */
        public static void main(String[] args) {

                ArrayList al = new ArrayList();
               
                al.add(new Person("lisi1",21));
                al.add(new Person("lisi2",22));
                al.add(new Person("lisi3",23));
                al.add(new Person("lisi4",24));
                al.add(new Person("lisi2",22));
                al.add(new Person("lisi3",23));
               
                boolean b = al.remove(new Person("lisi1",21));
                System.out.println("remove:"+b);
               
                Iterator it = al.iterator();
                while(it.hasNext()){
                        System.out.println(it.next());
                }
        }

        public static ArrayList getSingleElement(ArrayList al) {
               
                ArrayList temp = new ArrayList();
               
                Iterator it = al.iterator();
                while(it.hasNext()){
                        Object obj = it.next();
                        if(!temp.contains(obj)
                                temp.add(obj);
                }
                return temp;
        }

}





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