2017-06-14 142 views
1

我想知道這段代碼幹什麼?它打印所有TreeSet的幾個? 它真的可以用System.out.println打印TreeSet嗎?system.out.println(tresset對象)

public static void main(String[] args) { 
TreeSet <Moulage> treeSetMoulages = new TreeSet <Moulage>(); 
Moulage moulage = new Moulage ("REF24", "Cervidé","Bronze"); 
treeSetMoulages.add(moulage); 
moulage = new Moulage ("REF44", "Insigne de chefferie","Bois"); 
treeSetMoulages.add(moulage); 
moulage = new Moulage ("REF63", "Panthere","Marbre"); 
treeSetMoulages.add(moulage); 
moulage = new Moulage ("REF58", "Ours blanc","Marbre"); 
treeSetMoulages.add(moulage); 
moulage = new Moulage ("REF78", "Danseuse","Bronze"); 
treeSetMoulages.add(moulage); 
System.out.println (treeSetMoulages); 
} 

回答

1

只要Moulage是可打印的類,它就會像數組一樣打印出來。

+0

我如何知道它是否可打印類? – youngknight

+0

@youngknight如果你已經實現了'toString'方法。 System.out.println(object)在對象上調用'toString'方法。 –

0

我認爲,這取決於Moulage類和它的toString()實現。 Moulage類也必須執行Comparable。如果滿足這兩個條件,則System.out.println將打印元素。

+0

哦,謝謝你,我現在明白了,compareTo()會告訴TreeSet如何理清它? (抱歉我的英文不好,不知道它是否可以理解) – youngknight

+0

正確的,'compareTo()'方法決定如何比較和排序集合。 – dim