老戴

V1

2023/02/15阅读:13主题:默认主题

给list加一个对象放第一位如何操作?

给list加一个对象放第一位如何操作?

结论:使用List接口的void add(int index, E element) 方法,list.add(0, obj) ;

代码:

    @Test
    public void addTest(){
        List<Obj> list = new ArrayList<>();//或LinkedList
        list.add(new Obj("a"));
        list.add(new Obj("b"));
        System.out.println("before list = " + list);
        list.add(0, new Obj("c"));
        System.out.println("after list = " + list);
    }
    class Obj {
        private String name;
        public Obj(String name) {
            this.name = name;
        }
         @Override
        public String toString() {
            return "Obj{" +
                    "name='" + name + ''' +
                    '
}';
        }
    }
    /*
    结果:
    before list = [Obj{name='
a'}, Obj{name='b'}]
    after list = [Obj{name='
c'}, Obj{name='a'}, Obj{name='b'}]
    Obj不重写toString
    before list = [wcd.day1210.Test1$Obj@482cd91f,wcd.day1210.Test1$Obj@123f1134]
    after list = [wcd.day1210.Test1$Obj@7d68ef40, wcd.day1210.Test1$Obj@482cd91f, wcd.day1210.Test1$Obj@123f1134]
    */
  • 对象地址未变,使用的是浅拷贝

分类:

后端

标签:

Java

作者介绍

老戴
V1