打印arraylist元素?

ajs*_*sie 12 java

如何在arraylist"list"中打印元素"e"?

 ArrayList<Dog> list = new ArrayList<Dog>();
 Dog e = new Dog();
 list.add(e);
 System.out.println(list);
Run Code Online (Sandbox Code Playgroud)

sat*_*esh 12

您想要打印整个列表还是要遍历列表中的每个元素?无论哪种方式打印任何有意义的Dog类,您的类都需要从类中重写toString()方法(如其他答案中所述)Object以返回有效结果.

public class Print {
    public static void main(final String[] args) {
        List<Dog> list = new ArrayList<Dog>();
        Dog e = new Dog("Tommy");
        list.add(e);
        list.add(new Dog("tiger"));
        System.out.println(list);
        for(Dog d:list) {
            System.out.println(d);
            // prints [Tommy, tiger]
        }
    }

    private static class Dog {
        private final String name;
        public Dog(final String name) {
            this.name = name;
        }

        @Override
        public String toString() {
            return name;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

此代码的输出是:

[Tommy, tiger]  
Tommy  
tiger
Run Code Online (Sandbox Code Playgroud)


Jac*_*ack 6

首先确保Dog该类实现该方法public String toString()然后使用

System.out.println(list.get(index))
Run Code Online (Sandbox Code Playgroud)

其中index是列表中的位置.当然,既然你提供了实现,你可以决定狗自己打印的方式.

  • 我真的很想知道为什么人们不加解释地投票。 (2认同)