Creare un HashSet di valori Random e dividerli in 2 liste

di il
5 risposte

Creare un HashSet di valori Random e dividerli in 2 liste

Buongiorno, il testo dell'esercizio e' il seguente: Leggere 10 valori casuali da 0 a 100, inserirlo in un HashSet e dividerlo in 2 liste quella dei numeri pari, ordinata in modo crescente, quella dei num dispari ordinata in modo decrescente. Stampare i valori dell'HashSet e delle 2 liste.

la parte dei valori random l'ho fatta , mi manca la parte della divisione in 2 liste e dell'ordinamento.
il programma fatto per ora e' questo:

public class Esercizio9 {


public static void main(String[] args) {
HashSet hset = new HashSet();

int i=0;
for (i=0; i<10;i++){
int casuale=0+(int)(Math.random()*100);
System.out.println(casuale);
hset.add(casuale);

}
System.out.println(hset);
ArrayList pari = new ArrayList();
ArrayList dispari = new ArrayList();

come posso estrapolare i valori creati random e metterli nelle liste? grazie in anticipo, scusatemi ma sono alle prime armi con Java.

5 Risposte

  • Re: Creare un HashSet di valori Random e dividerli in 2 liste

    Cava9211 ha scritto:


    come posso estrapolare i valori creati random e metterli nelle liste?
    Fai una iterazione sul HashSet, per ciascun valore: se il numero è pari lo butti in una lista, se dispari nell'altra.

    P.S. stai usando collezioni non parametrizzate. Da Java 5 ci sono i generics, quindi andrebbero meglio usate come HashSet<Integer> e ArrayList<Integer> . Le puoi anche usare non parametrizzate ma devi fare un cast quando estrai un dato dalla collezione per poterlo "vedere" di un tipo specifico.
  • Re: Creare un HashSet di valori Random e dividerli in 2 liste

    Grazie mille! ho fatto la parte delle liste ed i numeri random, mi manca quella dell'ordinamento e non ci riesco.
    Potresti suggerirmi la via giusta da seguire? cosi ci sbatto un po la testa e lo capisco meglio
  • Re: Creare un HashSet di valori Random e dividerli in 2 liste

    Cava9211 ha scritto:


    mi manca quella dell'ordinamento e non ci riesco.
    Per l'ordinamento la questione è se devi implementare tu l'algoritmo di ordinamento (per motivi "didattici") o puoi usare il sort del framework.
  • Re: Creare un HashSet di valori Random e dividerli in 2 liste

    Non c'è scritto niente, penso che si possa usare il sort del framework
  • Re: Creare un HashSet di valori Random e dividerli in 2 liste

    Cava9211 ha scritto:


    Non c'è scritto niente, penso che si possa usare il sort del framework
    Basta che guardi tra i metodi di java.util.List/ArrayList (da Java 8) oppure in alternativa tra i metodi statici di java.util.Collections.
Devi accedere o registrarti per scrivere nel forum
5 risposte