HTML.it è il sito italiano del web publishing

[JAVA] TreeSet e ordinamento dei dati contenuti con diversi criteri



scegli un altro forum
    Indietro   Ricarica   Avanti Invia una risposta

Autore
Discussione     
albymotard
Utente di HTML.it



Registrato il: Jun 2011

Provenienza: milano

Messaggi: 106


ICQ:

MSN:

Skype:


[JAVA] TreeSet
Ciao ragazzi, ho un problema. Sto utilizzando questa struttura solo che (giustamente) quando vado a stampare tutti i valori contenuti nell 'albero essi non sono ordinati in ordine crescente.
In poche parole, io prendo dei valori (salvati in un arrayList<object> ) da un file di testo. Tutti questi valori (sono tutti interi ma vengono visti tutti come Object) vengo messi successivamente dentro al mio albero.
Ora io vorrei stampare i valori in ordine crescente (intesi come int)..come faccio?

Segnala ad un moderatore | IP: Collegato | Permalink

albymotard è offline Old Post 21-05-2012 12:56
Clicca qui per vedere il profilo dell'utente albymotard Clicca qui per inviare all'utente albymotard un messaggio privato Visualizza ulteriori messaggi scritti dall'utente albymotard Aggiungi l'utente albymotard alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
Kaamos
Utente di HTML.it



Registrato il: Dec 2009

Provenienza: Genova

Messaggi: 580


ICQ :

MSN :

Skype :


Re: [JAVA] TreeSet
Citazione:
Originariamente inviato da albymotard
Ciao ragazzi, ho un problema. Sto utilizzando questa struttura solo che (giustamente) quando vado a stampare tutti i valori contenuti nell 'albero essi non sono ordinati in ordine crescente.
In poche parole, io prendo dei valori (salvati in un arrayList<object> ) da un file di testo. Tutti questi valori (sono tutti interi ma vengono visti tutti come Object) vengo messi successivamente dentro al mio albero.
Ora io vorrei stampare i valori in ordine crescente (intesi come int)..come faccio?


TreeSet ha i metodi iterator e descendingIterator che restituiscono rispettivamente iteratori in ordine crescente e decrescente, usali e la stampa sara' ordinata in questo modo.
Se sai che gli elementi sono interi, specificalo come tipo parametrizzato, utilizzare Object e come non usare nemmeno i generici.
Se gli dici che sono Object, come fa ad ordinarli come se fossero interi?

Segnala ad un moderatore | IP: Collegato | Permalink

Kaamos è offline Old Post 21-05-2012 13:06
Clicca qui per vedere il profilo dell'utente Kaamos Clicca qui per inviare all'utente Kaamos un messaggio privato Visualizza ulteriori messaggi scritti dall'utente Kaamos Aggiungi l'utente Kaamos alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
albymotard
Utente di HTML.it



Registrato il: Jun 2011

Provenienza: milano

Messaggi: 106


ICQ :

MSN :

Skype :


ok allora posso fare semplicemente cosi. Perché ti spiego...quando stampavo bene o male i valori inseriti venivano stampati con un certo ordine e pensavo che dovessi trovare io il modo per stamparli ordinatamente...invece ho visto che mettendoli a intero fa già tutto lui....grazie

Segnala ad un moderatore | IP: Collegato | Permalink

albymotard è offline Old Post 21-05-2012 13:17
Clicca qui per vedere il profilo dell'utente albymotard Clicca qui per inviare all'utente albymotard un messaggio privato Visualizza ulteriori messaggi scritti dall'utente albymotard Aggiungi l'utente albymotard alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
Kaamos
Utente di HTML.it



Registrato il: Dec 2009

Provenienza: Genova

Messaggi: 580


ICQ :

MSN :

Skype :


Citazione:
Originariamente inviato da albymotard
ok allora posso fare semplicemente cosi. Perché ti spiego...quando stampavo bene o male i valori inseriti venivano stampati con un certo ordine e pensavo che dovessi trovare io il modo per stamparli ordinatamente...invece ho visto che mettendoli a intero fa già tutto lui....grazie


Mettendoli ad intero riesce ad ordinarli perche' Integer implementa l'interfaccia Comparable<Integer>, quindi la struttura dati puo' invocare compareTo sugli elementi che gli passi e capire chi e' maggiore di chi.
Piu' in generale, se vuoi che la struttura possa (se lo prevede) mantenere i tuoi elementi ordinati hai due opzioni: utilizzare un tipo generico E che implementi Comparable<E> oppure passare alla struttura un oggetto di interfaccia Comparator<E> che crei tu con i metodi compareTo ed equals come specificati nell'interfaccia; se gli passi una di queste due cose (ovviamente correttamente funzionante) la struttura puo' ordinare.

Segnala ad un moderatore | IP: Collegato | Permalink

Kaamos è offline Old Post 21-05-2012 13:38
Clicca qui per vedere il profilo dell'utente Kaamos Clicca qui per inviare all'utente Kaamos un messaggio privato Visualizza ulteriori messaggi scritti dall'utente Kaamos Aggiungi l'utente Kaamos alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
Tutte le ore sono con fuso orario CET. Ora sono le 14:27.     

    Ultima discussione   Prossima discussione Invia una risposta
Versione per la stampa | Invia il thread via email | Ricevi aggiornamenti sul thread | Scarica il thread
 

Cerchi un argomento specifico e hai fretta? Usa il motore di ricerca