Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Ordinare ArrayList di oggetti in base a una loro variabile

    Salve. Il problema è questo: ho degli oggetti, ognuno dei quali possiede una variabile intera. C'è poi un ArrayList che contiene questi oggetti e vorrei ordinare l'ArrayList in base all'ordine crescente della variabile intera contenuta in questi oggetti. Qualche consiglio?

    Grazie mille

  2. #2
    ciao, fai implementare alla tua classe l'interfaccia Comparable e fai l'ovverride del metodo compareTo

    ad esempio:

    codice:
    public class Prova implements Comparable<Prova> { 
      public Integer valore;
      
      public Prova(Integer valore) {
        this.valore = valore;
      }
    
      @Override
      public int compareTo(Prova o) {
        return this.valore.compareTo(o.valore);
      } 
    }
    dopodichè puoi fare così per ordinare la tua lista:

    codice:
    Collections.sort(miaLista);
    un altro modo (senza modificare la classe) è quello di passare al metodo Collections.sort un oggetto Comparator, esempio:

    codice:
    Comparator<Prova> ordinaPerValore = new Comparator<Prova>(){
      public int compare(Prova o1, Prova o2) {
        return o1.valore.compareTo(o2.valore);
      }      
    }; 
        
    Collections.sort(list, ordinaPerValore);
    per i dettagli leggi la documentazione di Comparable e Comparator

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 © 2025 vBulletin Solutions, Inc. All rights reserved.