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

    Ordinamento Classi

    Ciao a tutti... sono nuovo.. piacere alessandro..!

    ho un problema da porre a voi programmatori esperti...
    Voglio ordinare un'array di classi X.
    X ha come variabile un int chiamiamola y.
    io voglio ordinare l'array in ordine crescente secondo il parametro y.

    ho fatto un bubblesort creando una istanza di utilizzo X

    quindi X m=new X();
    for(..
    quando trovo che v[i].y>v[i+1].y
    faccio lo scambio:
    m=v[i]; **
    v[i]=v[i+1] **
    v[i+1]=m; **

    fin quando non sono tutti ordinati... MA NON FUNZIONAAA.. ho paura che la parte con gli asterischi non si possa fare perchè sono istanze quindi memorie steck e reference !?!??!?

    tutta roba che non so...

  2. #2

    Re: Ordinamento Classi

    Originariamente inviato da alexcandy91
    MA NON FUNZIONAAA..
    Evidentemente hai sbagliato ad implementare l'algoritmo di ordinamento! Il problema non è dipeso dall'uso degli oggetti, anzi!

    Ecco un esempio di implementazione corretto dell'algoritmo usando oggetti simili al tuo
    codice:
    public class Tester{
    
        public int y;
        /**
         * Creates a new instance of <code>Tester</code>.
         */
        public Tester(int y){
        	this.y = y;
        }
        
        @Override
        public String toString(){
        	return y+"";
        }
        
        /**
         * @param args the command line arguments
         */
        public static void main(String[] args) {
            // TODO code application logic here
            Tester set[] = {new Tester(10), new Tester(3), new Tester(2), new Tester(5), new Tester(7)};
            boolean swap = true;
            while(swap){
            	swap = false;
            	for(int i = 0; i < set.length - 1; i++){
            		if( set[i].y > set[i+1].y ){
            			Tester x = set[i];
            			set[i] = set[i+1];
            			set[i+1] = x;
            			swap = true;
            		}
            	}
            }
            
            for(Tester t : set){
            	System.out.print(t + " ");
            }
        }
    }

  3. #3
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: Ordinamento Classi

    Originariamente inviato da alexcandy91
    fin quando non sono tutti ordinati... MA NON FUNZIONAAA.. ho paura che la parte con gli asterischi non si possa fare perchè sono istanze quindi memorie steck e reference !?!??!?
    Lo steck cosa sarebbe?
    Comunque senza vedere il codice completo dell'algoritmo è difficile capire cosa c'è di sbagliato nel tuo programma, non siamo indovini...
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  4. #4
    ma il test non lo inizializzi!?!

  5. #5
    Originariamente inviato da alexcandy91
    ma il test non lo inizializzi!?!
    In che senso? Spiega quello che non hai capito, perchè il codice è corretto.

  6. #6
    si scusa...
    Tester x= set[i];

    non bisognerebbe inizzializzarlo? (scusa la domanda)

    quindi x=new Tester();
    ?

  7. #7
    Originariamente inviato da alexcandy91
    non bisognerebbe inizzializzarlo? (scusa la domanda)
    quindi x=new Tester();
    ?
    Assolutamente no.
    x è una variabile oggetto che puntarà all'oggetto della classe Tester che gli viene passato, cioè set[i].
    set[i] è il riferimento all'oggetto Tester che è stato precedentemente istanziato ed inserito nell'i-esima posizione di set.

  8. #8
    AAAAAAAAA... okok... capito... Sei un boss... grazie mille!!!!!!!

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.