Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Le soluzioni FSP per il 2026: potenza e IA al centro
Le soluzioni FSP per il 2026: potenza e IA al centro
In occasione del Tech Tour 2025 della European Hardware Association abbiamo incontrato a Taiwan FSP, azienda impegnata nella produzione di alimentatori, chassis e soluzioni di raffreddamento tanto per clienti OEM come a proprio marchio. Potenze sempre più elevate negli alimentatori per far fronte alle necessità delle elaborazioni di intelligenza artificiale.
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa
AWS è il principale operatore di servizi cloud al mondo e da tempo parla delle misure che mette in atto per garantire una maggiore sovranità alle organizzazioni europee. L'azienda ha ora lanciato AWS European Sovereign Cloud, una soluzione specificamente progettata per essere separata e distinta dal cloud "normale" e offrire maggiori tutele e garanzie di sovranità
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto
Xiaomi ha portato sul mercato internazionale la nuova serie Redmi Note, che rappresenta spesso una delle migliori scelte per chi non vuole spendere molto. Il modello 15 Pro+ punta tutto su una batteria capiente e su un ampio display luminoso, sacrificando qualcosa in termini di potenza bruta e velocità di ricarica
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-08-2013, 20:40   #1
Deep thought
Junior Member
 
Iscritto dal: Aug 2013
Messaggi: 24
[PSEUDORISOLTO][Java] Gestire liste senza conoscerne il tipo?

Saluton a voi utenti,
Sto studiando Java e vorrei chiedervi un soccorso su un certo esercizio del mio libro di testo.
Prima di tutto ho risolto questo:
Quote:
Si scriva un metodo generico soloPari() che, ricevuto un array a i cui elementi sono di un qualunque tipo T, restituisca un array composto dei soli elementi di indice pari all'interno di a. Per esempio: se x è l'array {1,5,10,100,4} il risultato di soloPari(x) sarà {1,10,4}.
È un esercizio abbastanza facile, che ho svolto con un metodo generico.
Quello che non sono riuscito a fare è il successivo, che dice:
Quote:
Si scriva una variante di soloPari() che accetti come argomento una qualunque sequenza, e non necessariamente un array.
La mia domanda è: anche usando un metodo generico, come si può gestire una sequenza di cui non si sa il tipo (e che quindi può essere array, ArrayList, Vector, String, LinkedList eccetera)? Anche ammesso di riuscire a farla passare fra i parametri, bisogna poi manipolarla con i metodi d'istanza, che cambiano di volta in volta.

Chi mi aiuta verrà molto ringraziato per la sua gentilezza!

Ultima modifica di Deep thought : 31-08-2013 alle 18:50.
Deep thought è offline   Rispondi citando il messaggio o parte di esso
Old 11-08-2013, 11:25   #2
[Kendall]
Senior Member
 
L'Avatar di [Kendall]
 
Iscritto dal: Jul 2005
Città: Vicenza
Messaggi: 1570
Quote:
Originariamente inviato da Deep thought Guarda i messaggi
Saluton a voi utenti,
Sto studiando Java e vorrei chiedervi un soccorso su un certo esercizio del mio libro di testo.
Prima di tutto ho risolto questo:


È un esercizio abbastanza facile, che ho svolto con un metodo generico.
Quello che non sono riuscito a fare è il successivo, che dice:


La mia domanda è: anche usando un metodo generico, come si può gestire una sequenza di cui non si sa il tipo (e che quindi può essere Array, ArrayList, Vector, String, LinkedList eccetera)? Anche ammesso di riuscire a farla passare fra i parametri, bisogna poi manipolarla con i metodi d'istanza, che cambiano di volta in volta.

Chi mi aiuta verrà molto ringraziato per la sua gentilezza!
Allora, premetto che non sono un esperto di java, ma in questo linguaggio dovrebbe esserci l'equivalente dell'interfaccia IEnumerable<T> del C# (se non erro in java è Iterable<T>.

Il concetto è abbastanza semplice, io parlo di C# ma credo che pari pari si possa traslare al java (un occhiata alle api ti aiuterà comunque).
IEnumerable espone dei metodi per elencare un un oggetto qualsiasi (se la relativa classe implementa l'interfaccia). Come è spontaneo supporre praticamente tutte le classi "contenitore" implementano tale interfaccia, quindi tu puoi enumerare un qualsiasi array, lista o altro contenitore generico creando un metodo che accetti come argomento un IEnumerable<Object> (o nel tuo caso Iterable<Object>).
[Kendall] è offline   Rispondi citando il messaggio o parte di esso
Old 11-08-2013, 22:07   #3
Deep thought
Junior Member
 
Iscritto dal: Aug 2013
Messaggi: 24
Grazie Kendall, la tua idea mi sarà d'aiuto. La cosa strana è che al punto del libro a cui sono arrivato io le interfacce non sono state ancora introdotte. Mi sembra anche difficile che in un esercizio si debba usare un'interfaccia mai nominata, da cercare nell'API. Che sia una svista degli autori?
Deep thought è offline   Rispondi citando il messaggio o parte di esso
Old 12-08-2013, 07:19   #4
[Kendall]
Senior Member
 
L'Avatar di [Kendall]
 
Iscritto dal: Jul 2005
Città: Vicenza
Messaggi: 1570
L'unica altra alternativa che mi viene in mente è l'utilizzo di quello che in c# è l'identificatore params, posto prima dell'argomento della funzione (sempre nell'ultima posizione).
Su java è chiamato varargs e si utilizza ponendo nel modello di funzione il tipo seguito da una ellipsis ("...").
Nel tuo caso:

Codice:
public Object[] soloPari(Object... args)
{
   ...
}
[Kendall] è offline   Rispondi citando il messaggio o parte di esso
Old 12-08-2013, 23:03   #5
hollywoodundead
Senior Member
 
L'Avatar di hollywoodundead
 
Iscritto dal: Jan 2009
Messaggi: 1234
Quote:
Originariamente inviato da Deep thought Guarda i messaggi
Grazie Kendall, la tua idea mi sarà d'aiuto. La cosa strana è che al punto del libro a cui sono arrivato io le interfacce non sono state ancora introdotte. Mi sembra anche difficile che in un esercizio si debba usare un'interfaccia mai nominata, da cercare nell'API. Che sia una svista degli autori?
Che libro stai studiando,forse posso darti una mano perchè siamo sulla stessa barca.
hollywoodundead è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2013, 09:35   #6
Deep thought
Junior Member
 
Iscritto dal: Aug 2013
Messaggi: 24
Quote:
Originariamente inviato da [Kendall] Guarda i messaggi
L'unica altra alternativa che mi viene in mente è l'utilizzo di quello che in c# è l'identificatore params, posto prima dell'argomento della funzione (sempre nell'ultima posizione).
Su java è chiamato varargs e si utilizza ponendo nel modello di funzione il tipo seguito da una ellipsis ("..."\).
Nel tuo caso:

Codice:
public Object[] soloPari(Object... args)
{
   ...
}
Sì, quelli in Java si chiamano metodi variadici, e trattano una serie di parametri passati come se fossero un array; il problema è che se passo come argomento una qualsiasi lista ottengo un semplice array Object di lunghezza 1 che contiene, in posizione 0, la lista passata.




Quote:
Originariamente inviato da hollywoodundead Guarda i messaggi
Che libro stai studiando,forse posso darti una mano perchè siamo sulla stessa barca.
Davvero? Io sto studiando "Programmazione in Java"di Apogeo, e tu?

Ultima modifica di Deep thought : 13-08-2013 alle 09:37.
Deep thought è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2013, 11:22   #7
hollywoodundead
Senior Member
 
L'Avatar di hollywoodundead
 
Iscritto dal: Jan 2009
Messaggi: 1234
Quote:
Originariamente inviato da Deep thought Guarda i messaggi
Sì, quelli in Java si chiamano metodi variadici, e trattano una serie di parametri passati come se fossero un array; il problema è che se passo come argomento una qualsiasi lista ottengo un semplice array Object di lunghezza 1 che contiene, in posizione 0, la lista passata.






Davvero? Io sto studiando "Programmazione in Java"di Apogeo, e tu?
Io sto studiando su Core java I the Fundamentals, però credo di non essere ancora arrivato tanto lontano per risolvere il secondo problema senza battere ciglio(devo ancora arrivare agli array). Possiamo comunque provare a ragionarci su. Il problema chiede di leggere una qualunque tipo di sequenza che sia un array etc.. in rete ci sono diverse spiegazioni su come utilizzare varargs, per esempio prova a leggere qui:

https://today.java.net/pub/a/today/2...9/varargs.html

Per completezza posta anche come hai risolto il primo esercizio, in quanto il secondo è solo un estensione del primo e bisogna aggiungere come argomenti le altre tipologie di sequenze esistenti in java
hollywoodundead è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2013, 11:38   #8
Deep thought
Junior Member
 
Iscritto dal: Aug 2013
Messaggi: 24
Scusa per il ritardo.
Per quanto riguarda il primo esercizio, l'ho risolto con questo codice:
Codice:
public static <T> Object[] soloPari(final T[] inputArray) {
	Vector<T> outputVector = new Vector<T>();
	for (int i=0; i<inputArray.length; i++) {
		if (i%2 == 0) outputVector.add(inputArray[i]);
	}
	Object[] outputArray = new Object[outputVector.size()];
	for (int i=0; i<outputVector.size(); i++) {
		outputArray[i] = outputVector.get(i);
	}
	return outputArray;
}
Temo che, se non sei ancora arrivato agli array (e quindi nemmeno ai vettori) possa essere un po' problematico. È un metodo generico che chiede come parametro un array di tipo qualsiasi (indicato con T) e crea un vettore outputVector di tipo T che contiene solo gli elementi di indice pari (cioè posizione nella lista). Quindi crea un array outputArray di tipo Object, lo riempie con i valori del vettore outputVector e lo restituisce come risultato.
Per quanto riguarda i varargs ho letto l'articolo e so come usarli, ma non mi possono essere utili qui perché l'esercizio chiede di creare un metodo che possa avere come argomento una lista, e non un numero imprecisato di dati. Cioè, il metodo che io devo scrivere deve essere tale da essere chiamato non così:
Codice:
soloPari (0, 2, 3456, 1);
che è appunto ciò che si fa con i metodi variadici; al contrario, io devo chiamarlo in questo modo:
Codice:
soloPari (array);
soloPari (Vector);
soloPari (LinkedList);
...
Quindi, che fare? L'unica cosa che mi viene in mente è scrivere un metodo sovraccarico per ogni tipo di lista possibile in Java, ma mi pare praticamente impossibile, perché io so che esistono Array, Vector, LinkedList, List e ArrayList, ma ce ne sono anche tante altre; per non parlare poi di quelle provenienti da API non ufficiali e tutto il resto.

P.S. Hollywoodundead, è difficile studiare un libro del genere in inglese? Ci vuole un'ottima conoscenza della lingua, vita all'estero e cose simili? E come mai lo preferisci a quelli in italiano?
Deep thought è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2013, 14:11   #9
hollywoodundead
Senior Member
 
L'Avatar di hollywoodundead
 
Iscritto dal: Jan 2009
Messaggi: 1234
@Deep

Per il secondo esercizio avevo pensato alla stessa soluzione da te proposta, cioe assegnare un metodo per ogni tipologia di lista presente in java ma come dici bene tu mi pareva una cosa troppo complicata da fare e in quel caso avrei dovuto dare come risposta "impossible for me". Per quanto riguarda varargs ho pensato che come soluzione non era male quella di passare come argomenti le diverse tipologie di liste in java, ma anche qui avevo i miei dubbi che la cosa funzionasse, visto che non sono nemmeno arrivato a studiare gli array. Il libro che studio l'ho scelto primo perchè capisco piu che bene sia in lettura che ascolto la lingua inglese ( poi per i termini tecnici basta un buon dizionario di fianco) e secondo perchè mi sono letto in pdf gli altri libri italiani, e non mi hanno molto entusiasmato. Alcuni di questi sono:

1)Dai fondamenti agli oggetti: corso di programmazione java di Pighizzino (questo è il libro che utilizzano nella facoltà dove andrò a studiare ) che mi è parso dalla lettura molto riduttivo nel spiegare le cose e ti butta in pasto gli esercizi come se il metodo di apprendimento fosse quello di memorizzare i blocchi di codice senza capirne il reale significato. Oltretutto le mie impressioni combaciano anche con alcuni commenti postati su amazon.

2)Programmazione Java 1 di Deitel, il commento su amazon è micidiale e non serve aggiungere altro. L'edizione in italiano pare sia stata tradotta in maniera terribile e che i capitoli siano stati organizzati in maniera diversa rispetto alla versione inglese, creando maggiore confusione.

3)Manuale di Java 6 di Claudio de sio cesari: questo è un peccato, perchè l'ho letto per almeno il primo capitolo e inizialmente parte bene solo che lo trovo ridondante e confusionario. I concetti vengono spiegati utilizzando duemila sinonimi diversi per spiegare la stessa cosa e credimi alla fine ti manda nel pallone senza capire bene quello che all'inizio del discorso spiegava chiaramente. Insomma parte bene spiegandoti il concetto e poi ti confonde i concetti iniziali esposti con parole che avrebbe potutto benissimo evitare. Se volessi capirlo bene credo che dovrei leggerlo almeno 3 volte

Ci sono altri libri che avrei voluto vedere com'erano ma non li ho trovati in rete e non avevo tempo per andare a vederli in libreria. Tra questi ci sono Programmazione in java di Roberto bruni,Java2 in tasca di loic fieux (per principianti) Il linguaggio java di Gosling James (anche qui la traduzione italiana e di conseguenza gli eventuali errori presenti mi spaventano) e infine Programmazione con java di Savitch Walter.

Sull'ultimo libro si Savitch mi piacerebbe sentire qualche parere, perchè pare che la traduzione in italiano non sia stata fatta male, quindi forse andrò a vederlo in libreria.

Ho scelto alla fine Core Java I the fundamentals perchè è quello in cui non ho riscontrato pareri negativi su amazon, e sopratutto perchè è spiegato bene.Non è fatto proprio per chi è principiante, ma va benissimo anche per chi inizia ad imparare questo linguaggio ad un livello tra il principiante e il medio. Io mi trovo bene, è un libro lungo perchè ci sono piu di 800 pagine da leggere, quindi magari se qualcuno vuole metterci meno tempo deve ripiegare su altri libri. Approfondisce molti aspetti che sicuramente altri libri non spiegano, e durante la spiegazione fa un confronto con delle note su quelle che sono le differenze con c++ su quel determinato argomento spiegato. Per me che punto ad imparare alla fine l'objc per diventare sviluppatore apple, è un buon inizio.

Ultima modifica di hollywoodundead : 14-08-2013 alle 14:14.
hollywoodundead è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2013, 14:34   #10
Deep thought
Junior Member
 
Iscritto dal: Aug 2013
Messaggi: 24
Il libro che sto studiando io è proprio "Programmazione in Java" di Roberto Bruni, e mi sembra abbastanza serio ma al tempo stesso comprensibile. Questa è la prima volta che mi trovo in seria difficoltà. Temo proprio di dover ignorare questo esercizio, per ora, almeno finché non si smuove qualcosa.
Deep thought è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2013, 15:14   #11
hollywoodundead
Senior Member
 
L'Avatar di hollywoodundead
 
Iscritto dal: Jan 2009
Messaggi: 1234
Quote:
Originariamente inviato da Deep thought Guarda i messaggi
Il libro che sto studiando io è proprio "Programmazione in Java" di Roberto Bruni, e mi sembra abbastanza serio ma al tempo stesso comprensibile. Questa è la prima volta che mi trovo in seria difficoltà. Temo proprio di dover ignorare questo esercizio, per ora, almeno finché non si smuove qualcosa.
Tu quale versione hai di Programmazione in java? la 2009 0 la 2011? sei sicuro che sia spiegato bene? perchè se uno ti mette un esercizio da fare si presume che ti abbia spiegato prima i concetti che servono per farlo non dopo.
hollywoodundead è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2013, 18:15   #12
Deep thought
Junior Member
 
Iscritto dal: Aug 2013
Messaggi: 24
Ho l'edizione del 2011. La lezione l'ho capita bene, e ho anche riletto le parti interessate; secondo me il problema è proprio impossibile, o qualcun altro leggermente più esperto di noi due avrebbe già dato una risposta risolutiva (è pur sempre un esercizio). Sarà stato un errore.
Deep thought è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2013, 18:16   #13
Deep thought
Junior Member
 
Iscritto dal: Aug 2013
Messaggi: 24
Ho l'edizione del 2011. La lezione l'ho capita bene, e ho anche riletto le parti interessate; secondo me il problema è proprio impossibile, o qualcun altro leggermente più esperto di noi due avrebbe già dato una risposta risolutiva (è pur sempre un esercizio di un libro di testo, non dovrebbe essere difficile per altri). Sarà stato un errore.
Deep thought è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2013, 19:52   #14
mone.java
Senior Member
 
L'Avatar di mone.java
 
Iscritto dal: May 2008
Città: Seattle (WA)
Messaggi: 306
Codice:
public static <T> Collection<T> soloPari(Collection<T> inputArray) {
	List<T> outputList = new ArrayList<T>();
	int i = 0;
	for (T elem : inputArray) {
		if (i % 2 == 0) outputList.add(elem);
		i++;
	}

	return outputList;
}
forse quello che vi serve è questo se volete comprendere tutte le collezioni di java (Array, Vector, LinkedList, List e ArrayList ecc...)
__________________
"Considerate la vostra semenza fatti non foste a viver come bruti ma per seguir virtute e canoscenza"
mone.java è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2013, 19:54   #15
hollywoodundead
Senior Member
 
L'Avatar di hollywoodundead
 
Iscritto dal: Jan 2009
Messaggi: 1234
Quote:
Originariamente inviato da Deep thought Guarda i messaggi
Ho l'edizione del 2011. La lezione l'ho capita bene, e ho anche riletto le parti interessate; secondo me il problema è proprio impossibile, o qualcun altro leggermente più esperto di noi due avrebbe già dato una risposta risolutiva (è pur sempre un esercizio di un libro di testo, non dovrebbe essere difficile per altri). Sarà stato un errore.
Di esperti d'estate non trovi nessuno , ritornano a settembre ottobre come di solito. Comunque dall'indice del libro immagino che tu sia almeno a metà del libro, magari la soluzione la trovi piu avanti . Riuppalo per settembre, magari qualche esperto è già tornato dalle vacanze e lo risolve in un batter d'occhio. A me interessa saperla la soluzione, non mi piace lasciare le cose per non fatte, quindi, per adesso non sono di grande aiuto perchè sono agli inizi, pero piu in là chissà
hollywoodundead è offline   Rispondi citando il messaggio o parte di esso
Old 15-08-2013, 13:41   #16
hollywoodundead
Senior Member
 
L'Avatar di hollywoodundead
 
Iscritto dal: Jan 2009
Messaggi: 1234
Quote:
Originariamente inviato da mone.java Guarda i messaggi
Codice:
public static <T> Collection<T> soloPari(Collection<T> inputArray) {
	List<T> outputList = new ArrayList<T>();
	int i = 0;
	for (T elem : inputArray) {
		if (i % 2 == 0) outputList.add(elem);
		i++;
	}

	return outputList;
}
forse quello che vi serve è questo se volete comprendere tutte le collezioni di java (Array, Vector, LinkedList, List e ArrayList ecc...)
Ciao , potresti riscriverlo con un esempio concreto, sostituendo quelle T, cosi per renderlo piu comprensibile
hollywoodundead è offline   Rispondi citando il messaggio o parte di esso
Old 15-08-2013, 20:11   #17
mone.java
Senior Member
 
L'Avatar di mone.java
 
Iscritto dal: May 2008
Città: Seattle (WA)
Messaggi: 306
Codice:
public static void main(String[] args) {
	List<Integer> list = Arrays.asList(1,2,3,4,5,6,7,8,9,0);
	
	Collection<Integer> pari = soloPari(list);
	
	for(Integer i : pari) {
		System.out.println(i);
	}
}
__________________
"Considerate la vostra semenza fatti non foste a viver come bruti ma per seguir virtute e canoscenza"
mone.java è offline   Rispondi citando il messaggio o parte di esso
Old 15-08-2013, 23:03   #18
hollywoodundead
Senior Member
 
L'Avatar di hollywoodundead
 
Iscritto dal: Jan 2009
Messaggi: 1234
Quote:
Originariamente inviato da mone.java Guarda i messaggi
Codice:
public static void main(String[] args) {
	List<Integer> list = Arrays.asList(1,2,3,4,5,6,7,8,9,0);
	
	Collection<Integer> pari = soloPari(list);
	
	for(Integer i : pari) {
		System.out.println(i);
	}
}
Inanzitutto ho trovato indicativamente,se non tutte,le collections framework qui: http://docs.oracle.com/javase/6/docs...reference.html

Nel programma che hai scritto,hai utilizzato un ciclo for each loop,dove crei una sequenza List che chiami list, di tipo intero con al suo interno un metodo array(che contiene quella sequenza di numeri che hai messo). Poi crei una Collection Framework che chiami pari, di tipo intero, a cui passi il metodo soloPari() (come mai non hai riportato per chiarezza, anche il metodo solopari() postato da deep?) che va a interagire con l'oggetto list. Infine con un ciclo for each loop vai a dire per ogni elemento i, intero, passato nella colletcion pari, vai ad eseguire la stampa...però non mi tornano alcuni passaggi.

1)"i" dove l'hai dichiarata per collegarla agli elementi dell'array?
2)Il programma scritto cosi, è completo o manca appunto da aggiungere il metodo soloPari() e altri pezzi di codice?

Secondo me la domanda da farsi è: esiste una oggetto o funzione che inglobi in un colpo solo tutti i tipi di Collections framework in modo tale da passarci solo quello come argomento del metodo soloPari()? altrimenti ritorniamo punto a capo,cioè che bisogna aggiungere ogni singola Collections come argomento del metodo soloPari()

Ultima modifica di hollywoodundead : 15-08-2013 alle 23:07.
hollywoodundead è offline   Rispondi citando il messaggio o parte di esso
Old 16-08-2013, 07:51   #19
mone.java
Senior Member
 
L'Avatar di mone.java
 
Iscritto dal: May 2008
Città: Seattle (WA)
Messaggi: 306
1) l'ho dichiarata esattamente dove la vedi
Codice:
//DIchiaro i e assegno ad ogni iterazione il valore successivo contenuto in pari 
//studiati il foreach in java comunque
for(Integer i : pari)
2)manca soloPari() che ho scritto nel post precedente metti assieme soloPari() e main() in una classe ed esegui..

3)Si questo oggetto (sarebbe meglio dire classe) esiste e si chiama per l'appunto Collection... Infatti a soloPari ci puoi passare sia un ArrayList che una LinkedList che un Set ecc... in parole povere tutte le collezioni che java ci mette a disposizione...

ti posto il programma intero:

Codice:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;

/**
 *
 * @author Simone Rondelli - mone.java[at]gmail.com
 */
public class Main {

    public static void main(String[] args) {
        List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 0);

        Collection<Integer> pari = soloPari(list);

        for (Integer i : pari) {
            System.out.println(i);
        }
    }

    public static <T> Collection<T> soloPari(Collection<T> inputArray) {
        List<T> outputList = new ArrayList<>();
        int i = 0;
        for (T elem : inputArray) {
            if (i % 2 == 0) {
                outputList.add(elem);
            }
            i++;
        }

        return outputList;
    }
}
al posto di list ci puoi mettere una qualunque collezione java...
__________________
"Considerate la vostra semenza fatti non foste a viver come bruti ma per seguir virtute e canoscenza"
mone.java è offline   Rispondi citando il messaggio o parte di esso
Old 23-08-2013, 12:30   #20
Deep thought
Junior Member
 
Iscritto dal: Aug 2013
Messaggi: 24
Scusate per la lunga assenza, ma sono stato in vacanza e non ho usato Internet per una settimana.
@mone.java
Grazie, questo è proprio quello che mi serviva! Sicuramente da solo non ci sarei mai arrivato, perché non ho mai avuto a che fare con le Collection né sapevo che esistessero. Se ho capito bene, la classe Collection è una specie di classe generica che dà un supporto a tutti i tipi di liste (perdonami per il linguaggio in cui mi esprimo, da novellino)?
Poi tu hai creato un metodo generico che prende come argomento una lista qualsiasi e restituisce un oggetto List; il tipo del metodo è Collection<T>, ma il tipo della variabile di ritorno outputList è List, quindi il tipo di ritorno sarà List, vero?

EDIT: L'API di Java dice che Collection è un'interfaccia, e io le interfacce non le ho ancora studiate. Che sono?

EDIT2: Forse sto capendo qualcosa: il metodo generico soloPari è di qualunque tipo T che implementi l'interfaccia Collection, giusto? Ma allora in questo caso non si sarebbe dovuto scrivere, nell'intestazione del metodo,
Codice:
public static <T extends Collection<T>> soloPari
?

Ultima modifica di Deep thought : 23-08-2013 alle 13:06.
Deep thought è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Le soluzioni FSP per il 2026: potenza e IA al centro Le soluzioni FSP per il 2026: potenza e IA al ce...
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa AWS annuncia European Sovereign Cloud, il cloud ...
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto Redmi Note 15 Pro+ 5G: autonomia monstre e displ...
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione HONOR Magic 8 Pro: ecco il primo TOP del 2026! L...
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata Insta360 Link 2 Pro e 2C Pro: le webcam 4K che t...
Chiamate cristalline e ANC evoluto a pre...
Adobe aggiorna Premiere e After Effects:...
AI Bundle, la novità dei driver A...
La roadster elettrica supportata da Xiao...
Netflix rivede l'offerta per Warner Bros...
Satya Nadella avverte: senza benefici co...
Anche secondo Andy Jassy, CEO di Amazon,...
Audi mostra la sua prima auto di Formula...
Evolve3 85 e 75: Jabra presenta le prime...
KIOXIA: 'il tempo degli SSD a basso cost...
Apple perde la sua posizione privilegiat...
CovertLabs lancia l'allarme: 198 app AI ...
Smart TV QLED da 75 pollici a 559€ su Am...
Nello Spazio l'evoluzione cambia rotta: ...
Il fondatore di Waymo critica l'FSD di T...
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: 16:31.


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