C'è un modo di farlo?
C'è un modo di farlo?
>>>>>>>> Il Manicomio - Che Il Manicomio sia con te! <<<<<<<<
Se ho capito bene quello che vuoi fare, la risposta e' no.
Ma a cosa ti serve?
per rendere piu "generale" una funzione invece che di farne 3, visto che l'unica cosa che cambierebbe fra le 3 funzioni è dove viene aggiunto il dato
tipo:
ho 3 vector di stringhe.
Vector<String> a = new Vector<String>();
Vector<String> b = new Vector<String>();
Vector<String> c = new Vector<String>();
public void funzioneA ( String Dato ) {
a.add(Dato);
}
public void funzioneB ( String Dato ) {
b.add(Dato);
}
public void funzioneC ( String Dato ) {
c.add(Dato);
}
Capito cosa vorrei poter fare? Passargli come parametro anche il nome della variabile e poi usarlo
>>>>>>>> Il Manicomio - Che Il Manicomio sia con te! <<<<<<<<
Per fare quello che chiedi è sufficiente cambiare la firma del metodo:
Ciao.codice:public void funzioneA (String Dato, Vector destinazione) { destinazione.add( Dato ); }![]()
"Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza
Se non puoi passagli il Vector, puoi sempre utilizzare una Map di Vector e passare il nome (che poi e' la versione fattibile di quello che volevi fare in partenza).
codice:private Map<Vector> vettori = new HashMap<Vector>(); //NEL COSTRUTTORE vettori.put("a",new Vector()); vettori.put("b",new Vector()); vettori.put("c",new Vector()); //IL METODO DIVENTA public void funzione(String dato, String key) { if(vettori.containsKey(key)) { Vector vettore = vettori.get(key); vettore.add(dato); } }
carina come idea, il problema è che con questa soluzione si complica di molto il codice e non so quanto verrebbe ottimizzato il tutto =)
>>>>>>>> Il Manicomio - Che Il Manicomio sia con te! <<<<<<<<
Si complica? Qualche riga in piu' non mi sembra una grossa comlicazione, devi solo sostituire le parti in cui accedi ai vari vettori. A livello computazionale, l'uso di Hashmap ti permette di accedere ai vettori sottostanti ad un costo irrisorio.
bhe si complica perche dovrei un attimino riordinare tutto il codice e piu che altro non vorrei fare delle cappellate in quanto è un progetto per un esame di programmazione universitaria e non vorrei fare bischerate, sai i professori ti "puniscono" se utilizzi strumenti che non ti hanno insegnato, vallo a capire perche![]()
![]()
>>>>>>>> Il Manicomio - Che Il Manicomio sia con te! <<<<<<<<
Beh, se i tuoi prof non vogliono e' un altro discorso allora...
C'e' sempre un ulteriore metodo, assai brutto per la verita', di passare una stringa da testare con degli if per decidere in quale delle tre strutture dati inserire il daro.
ehehe ci avevo già pensato è solo che sono alquanto pignolo e ossessionato dall'efficienza.
Un altra cosa che mi viene in mente è: ( un po OT ma vitale) secondo te se lui nel progetto mi dice di sviluppare un determinato caso ( per esempio ricerca in un file di testo di tutte le parole e ogni riga identifica una parola ) ma io sviluppo quello rendendolo piu generale ( ovvero che su una riga ci devono essere piu parole, proprio come se fosse una normale frase con punteggiatura e tutto il resto) va bene lo stesso? cioe vengo premiato?
Cioe non lo faccio nemmeno di proposito di ingarbugliarmi cosi, proprio ne sento la necessità di stare a guardare tutti i ma i perche le virgole i punti e i miglioni di problemi teorici che mi vengono in mente![]()
>>>>>>>> Il Manicomio - Che Il Manicomio sia con te! <<<<<<<<