Java - 打印List<>

时间:2017-06-09 16:39:46

标签: java list printing

假设我有一个List<Item>并且我想打印它以便它将打印为[ item print, item print, ...],但我不知道列表的动态类型。 (Item.toString()有一个实现,打印例如“item print”)。

我有办法轻松打印吗?

我试图搜索答案,但所有这些似乎都是我们知道动态类型的列表(例如ArrayList),在我的情况下我不知道。此外,java的oracle的Collection和List文档似乎没有提到的toString()方法。

谢谢!

3 个答案:

答案 0 :(得分:2)

首先转到你的Item类,然后@override toString()方法,之后,你可以浏览列表并打印出来:

System.out.print("[");
for(Item it : myListOfItems) {
     System.out.print(it.toString() + ", ");
}
System.out.print("]");

答案 1 :(得分:2)

检查出来

public class ABC {
    public static void main(String[] args) {
        List<Item> items = new ArrayList<>();
        Item e1 = new Item();
        Item e2 = new Item();
        items.add(e1);
        items.add(e2);
        System.out.println(items);
    }
}
class Item {
    @Override
    public String toString() {
        return "item print";
    }
}

输出

[item print, item print]

答案 2 :(得分:-2)

任何合理的List实现(具体为ArrayList)都会通过调用其所有项toString()并使用某些分隔符(通常是逗号)加入它们来实现toString()。长话短说 - 让Java做它的事情并调用默认的toString()

System.out.println(myList);