Avete mai visto un mazzo di carte che può riempirsi da solo ed estrarre casualmente una carta da esso? 
Se non avete la minima idea di quello che stiamo dicendo, leggete il codice qui sotto:

CODICE:
package main;

import java.util.ArrayList;

public class Mazzo
{

ArrayList<String> carte = new ArrayList<String>();
static String [] semi = “CQFP”.split(“”);
static String [] valori = “A234567JQK”.split(“”);

public Mazzo()
{
//Quando il mazzo verrà creato, sarà immediatamente riempito con tutte le carte
mischia();
}

public void mischia()
{
//Svuotiamo il mazzo
carte.clear();
//E rimettiamo tutte le carte, ovvero tutte le combinazioni possibili di semi e valori
for(String s : semi)
for(String v : valori)
carte.add(v+s);
}

public String pesca()
{
//Generiamo un numero casuale che sarà dato dalla moltiplicazione di un numero casuale da 0 a 1 (non compresi)
//e dal numero di carte presenti nel mazzo. Una volta trasformato ad intero avremo una possibile posizione
//del nostro array da cui andare ad estrarre la carta e restituirla.
int casuale = (int) (Math.random() * carte.size());
return carte.remove(casuale);
}

}

Se siete interessati ad approfondire il discorso, iscrivetevi alla nostra newsletter e seguite la pagina Facebook di Formati e Occupati.
Sei invece volete nuovi codici da studiare e provare, visitate il nostro blog