如何在列表中打印列表?

时间:2017-08-04 09:13:26

标签: java

我试图找出一种在java中打印ArrayList的方法,该方法遵循如下模式:

输入

<a, B, B, B, a, But, But, a, yes, a> // ArrayList

输出

<a, <B,B,B>, a, <But,But>, a, <yes>,a> // ArrayList within the ArrayList

我需要在&#39; a&#39;之间打印所有字符串。应该在另一个列表中的单独列表中。 但是,我完全不知道如何实现这一目标。拜托,有人可以帮帮我吗?我尝试在网上搜索类似的问题,但是,在搜索中对它进行正确的搜索非常困难。

1 个答案:

答案 0 :(得分:0)

您可以iterate超过您的第一个List,然后其中一个元素是IterableSetList,...)您在此recursively对象

上调用Iterable相同的方法
public static void print(Iterable<Object> i) {
    for (Object o : i){
        if (o instanceof Iterable)
            print((Iterable) o);
        else
            System.out.println(o);
    }
}

如何使用的示例:

public static void main(String[] args) {
    List<Object> list = new ArrayList<>();
    list.add("a");
    list.add(Arrays.asList("tt", "tt", 76));
    list.add("a");
    list.add(65);
    print(list);
}