Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    2

    Iterazione degli elementi di una lista

    Salve ragazzi voglio porvi questa domanda. Ho fatto un programma java che gestisce un agenzia di autobus e tram. Ora devo completare un metodo che riceve il codice della fermata X e il tempo di riferimento in minuti e fornisca in uscita la lista dei passaggi per quella fermata successivi al tempo di riferimento. Vi allego il metodo come l'ho scritto io e spero che qualcuno mi dia una mano.

    private List<Fermata> ft = new LinkedList<Fermata>(); //lista delle fermate

    public List<Passaggio> prossimiPassaggi(int fermata, int minuti){
    Fermata ferm = ft.get(fermata);
    List<Linea> ln2 = new LinkedList<Linea>(ferm.getLinee());
    for(Linea l:ln2){
    List<Passaggio> pass = new LinkedList<Passaggio>(l.passaggi());
    for(Passaggio pass){
    if(p.getFermata().getCodice() == ferm.getCodice()){
    if(p.getMinuti() > minuti){
    psgPross.add(p);
    }
    }
    }
    }
    Collections.sort(psgPross, new Comparator<Passaggio>(){
    public int compare(Passaggio x, Passaggio y) {
    if(x.getMinuti() < y.getMinuti()) return -1;
    if(x.getMinuti() > y.getMinuti()) return 1;
    return 0;
    }
    });
    return psgPross;
    }

    A me da un problema di ordinamento mi sapete dire perche e eventualmente dire la correzione???

    Aspetto notizie

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Iterazione degli elementi di una lista

    Originariamente inviato da dave89
    codice:
    		Collections.sort(psgPross, new Comparator<Passaggio>(){
    			public int compare(Passaggio x, Passaggio y) {
    				if(x.getMinuti() < y.getMinuti()) return -1;
        				if(x.getMinuti() > y.getMinuti()) return 1;
        				return 0;
    			}
    		});
    A me da un problema di ordinamento mi sapete dire perche e eventualmente dire la correzione???
    Il Comparator che hai implementato tecnicamente è corretto e compara nel modo appropriato per i minuti (in senso crescente).

    Che ordinameno vorresti o comunque perché dici che c'è un problema di ordinamento?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    2
    guarda non lo so anche a me sembra strano. Perche appunto mi interessa un ordinamento per minuti. Ma quando faccio un test su questo metodo non effettua l'ordinamento voluto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.