Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione OPPO Find X9 Ultra: è lui il cameraphone definitivo
Recensione OPPO Find X9 Ultra: è lui il cameraphone definitivo
Find X9 Ultra è lo smartphone che tanti aspettavano, e finalmente è arrivato anche in Italia. Abbiamo provato il flagship di OPPO per diverse settimane, e siamo volati fino in Cina alla sua presentazione ufficiale. Tutto gira intorno al suo incredibile comparto fotografico in collaborazione con Hasselblad e con un totale di sei fotocamere. Il resto è un mix di specifiche di altissimo livello, così come il prezzo. Vi raccontiamo tutto nella nostra recensione completa.
Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet
Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet
Il nuovo Deebot X12 OmniCyclone abbina un sistema di raccolta dello sporco senza sacchetto, un rullo di lavaggio esteso e la tecnologia FocusJet per intervenire più efficacemente sulle macchie più persistenti. Un robot completo e preciso che aiuta a tenere puliti i pavimenti di casa con il minimo sforzo
Narwal Flow 2: la pulizia di casa con un mocio a nastro
Narwal Flow 2: la pulizia di casa con un mocio a nastro
Narwal Flow 2 implementa un mocio a nastro che esegue una pulizia dettagliata del pavimento di casa, in abbinamento ad un potente motore di aspirazione della polvere: un prodotto ideale per gestire in autonomia e con grande efficacia le necessità di pulizia dei pavimenti di casa
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-01-2009, 00:01   #1
blindwrite
Senior Member
 
Iscritto dal: Jan 2005
Città: Gières
Messaggi: 3617
[java] ordinare arraylist

ho questa classe:
Codice:
public class Evaluation {
	
	ArrayList<Researcher> researchers;
	ArrayList <Journal>journals;
}
devo ordinare l'ArrayList journals, ho scritto questo codice
Codice:
 public Collection<Journal> getJournalsByIF(){
    	
    	Collections.sort(journals);
    	return journals;
    }
la classe Journal implementa Comparable
Codice:
public class Journal implements Comparable<Journal>{
	
	private String issn;
	private String title;
	private double impactfactor;
	ArrayList <Article>articles;
}
e ho creato i metodo compareTo
Codice:
public int compareTo(Journal o) {
		double compare = o.impactfactor - this.impactfactor;
		return  (int)compare;
	}
Non funziona, e non capisco cosa ci sia di sbagliato!!
chi mi può dare una mano chiarificandomi cosa sbaglio concettualmente??
grazie
__________________
Intel i5 4570 - Gigabyte Z87-HD3 - Antec KÜHLER 620 V4 - Corsair/Kingston 16GB DDR3 1600Mhz - KFA2 GTX 1070 EX @ EXOC bios - SanDisk Ultra II 480GB - EVGA 650GQ - Sony KDL-24EX320 - Logitech G502 & G933 - SteelSeries APEX M500 - W10 64bit

Ultima modifica di blindwrite : 24-01-2009 alle 00:43.
blindwrite è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2009, 00:52   #2
Don[ITA]
Senior Member
 
L'Avatar di Don[ITA]
 
Iscritto dal: Jul 2006
Città: Bergamo
Messaggi: 401
In che senso non funziona?
Non ti ordina il tuo ArrayList, o te lo ordina in modo scorretto?

Saluti
__________________
iMac 27" 5K
Don[ITA] è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2009, 10:02   #3
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da blindwrite Guarda i messaggi
e ho creato i metodo compareTo
Codice:
public int compareTo(Journal o) {
		double compare = o.impactfactor - this.impactfactor;
		return  (int)compare;
	}
Innanzitutto non è corretto, per via della sottrazione e del cast a int. Metti di avere due numeri 0.3 e 0.5, il risultato di compareTo è 0 ... non mi sembra proprio corretto!

Poi compareTo deve ritornare:
< 0 se this < altroOggetto
> 0 se this > altroOggetto
= 0 se this = altroOggetto

Chiaramente sei anche libero di "girare" la cosa al contrario se vuoi l'ordinamento inverso.

Nel tuo codice se o.impactfactor=10 e this.impactfactor=2 tu ritorneresti > 0 e quindi l'oggetto con il 2 verrebbe visto come "più grande" di quello con il 10. Volevi proprio così??
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2009, 11:50   #4
blindwrite
Senior Member
 
Iscritto dal: Jan 2005
Città: Gières
Messaggi: 3617
Quote:
Originariamente inviato da andbin Guarda i messaggi
Innanzitutto non è corretto, per via della sottrazione e del cast a int. Metti di avere due numeri 0.3 e 0.5, il risultato di compareTo è 0 ... non mi sembra proprio corretto!

Poi compareTo deve ritornare:
< 0 se this < altroOggetto
> 0 se this > altroOggetto
= 0 se this = altroOggetto

Chiaramente sei anche libero di "girare" la cosa al contrario se vuoi l'ordinamento inverso.

Nel tuo codice se o.impactfactor=10 e this.impactfactor=2 tu ritorneresti > 0 e quindi l'oggetto con il 2 verrebbe visto come "più grande" di quello con il 10. Volevi proprio così??
Grazie mille sono davvero uno stupido!!
Ho perso ore per una cavolata del genere!!
è proprio vero che le cose più banali sono quelle che ti portano via più tempo.
Grazie ancora!!!
__________________
Intel i5 4570 - Gigabyte Z87-HD3 - Antec KÜHLER 620 V4 - Corsair/Kingston 16GB DDR3 1600Mhz - KFA2 GTX 1070 EX @ EXOC bios - SanDisk Ultra II 480GB - EVGA 650GQ - Sony KDL-24EX320 - Logitech G502 & G933 - SteelSeries APEX M500 - W10 64bit
blindwrite è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione OPPO Find X9 Ultra: è lui il cameraphone definitivo Recensione OPPO Find X9 Ultra: è lui il c...
Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet Ecovacs Deebot X12 OmniCyclone: lava grazie a Fo...
Narwal Flow 2: la pulizia di casa con un mocio a nastro Narwal Flow 2: la pulizia di casa con un mocio a...
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless Tastiera gaming MSI GK600 TKL: switch hot-swap, ...
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici DJI Osmo Pocket 4: la gimbal camera tascabile cr...
Project Helix sarà prodotta anche...
La NASA pubblica alcuni aggiornamenti su...
Tute spaziali AxEMU per Artemis: Axiom S...
Nutanix Government Cloud Clusters arriva...
Troy Baker lavora a un progetto tutto su...
Motorola Edge 60 Neo è il compatt...
Stretto di Hormuz, finti funzionari iran...
Dragon Ball Xenoverse 3 annunciato uffic...
WINDTRE BUSINESS potenzia i servizi IoT ...
OPPO rinnova l'ecosistema: arrivano Watc...
OPPO Find X9 Ultra ufficiale: debutta il...
Renault Twingo: esposta a Milano per far...
Intel vuole cambiare: overclocking anche...
Anche PlayStation introduce la verifica ...
Samsung ed Sk hynix, i bonus per gli ope...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 18:36.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v