Domanda

Ho un SortedSet definito in questo modo:

SortedSet<RatedMessage> messageCollection = new TreeSet<RatedMessage>(new Comp());

e ho una serie di RatedMessage []

Ho dovuto usare la matrice come l'insieme manca la funzione di serializzazione, ora ho bisogno di costruire di nuovo.

C'è un modo rapido per aggiungere tutti gli elementi dalla matrice al set di nuovo?

È stato utile?

Soluzione

Collections.addAll(messageCollection, array);

funzionalmente identico a risposta di Michael, ma come il javadoc dice:

  

Aggiunge tutti gli elementi specificati per   la collezione specificato. elementi per   da aggiungere può essere specificato singolarmente   o come un array. Il comportamento di questo   metodo comodo è identico a   quello   c.addAll (Arrays.asList (elementi)),   ma questo metodo rischia di corsa   significativamente più veloce sotto la maggior parte   implementazioni.

Altri suggerimenti

Set ha un addAll metodo, ma ci vuole solo una collezione, quindi avrete bisogno di convertire l'array prima:

RatedMessage[] arr;
messageCollection.addAll(Arrays.asList(arr));

È possibile aggiungere RatedMessage [] array in SortedSet con Arrays.asList con TreeSet

String RatedMessage[]={"1","2","3","1","4","3"};
SortedSet lst= new TreeSet(Arrays.asList(RatedMessage));
Iterator it = lst.iterator();
        while(it.hasNext())
        {
            Object ob= it.next();
            System.out.println(ob);
        }
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top