2012-11-21 56 views
-1

我想一个ArrayList的每一个元素添加到一个单一的对象(其中有一个通用的基本类型T)添加一个ArrayList的所有元素单个对象

林试图做到这一点,但是当我打印出来的最后的输出是对象,我只有列表的最后一个元素被打印出来。

因此,它通过每个元素进行迭代,但存储和打印最后一个元素。

有什么建议吗?

+6

你能告诉我们你正在使用的代码吗? – arshajii

+1

你也可以发布你的代码。如何将arraylist的所有元素添加到一个对象中? – Addict

+1

除非您要添加的对象具有某种内部集合,否则您只需替换最后添加的下一个对象 – Bohemian

回答

0

假设您的T不是聚合类型,不可能将多个对象合并为一个。

如果您的T是一个集合,并且您想折叠集合,则可以迭代每个源集合并将每个值添加到目标集合。

但是,它听起来像你真的是对象的可打印视图。如果这是为了调试,我建议找到许多JSON支持库之一,并打印对象的JSON转换,这将是可读的。我推出了自己的产品,因为我必须支持Domino API类型,所以我不推荐使用它。

我最近一直在做远,太多的C#,而现在不能想用流利的Java,但一些接近这一点(至少在精神上,如果不是语法或API的细节)是你所追求的:

StringBuffer b = new StringBuffer(); 
boolean first = true; 

for (var t : collectionType) { 
    if (first) { 
     first = false; 
    } 
    else { 
     b.add(", "); 
    } 

    b.add(t.toString()); 
} 

// Aggregated printable values are now b.toString() 
相关问题