ciao a tutti sto realizzando,per pura passione, una briscola in java, ma ho un piccolo problemino?
public class Card {
public static Card[] mazzo;
public static String s;
public static int seme, number, value;
public Card(int s, int n,int v){
seme=s;
number=n;
value=v;
}
public String toString(){
s= "seme:" +Card.seme+ "number: "+Card.number+"value: "+Card.value;
return s;
}
public static void inizializeCard(){
mazzo= new Card[40];
Denari.makeDenari();
Spade.makespade();
Coppe.makeCoppe();
Bastoni.makeBastoni();
mazzo[0]= Denari.asso;
mazzo[1]= Denari.due;
mazzo[2]= Denari.tre;
mazzo[3]= Denari.quattro;
mazzo[4]= Denari.cinque;
mazzo[5]= Denari.sei;
mazzo[6]= Denari.sette;
mazzo[7]= Denari.donna;
mazzo[8]= Denari.cavallo;
mazzo[9]= Denari.re;
mazzo[10]= Spade.asso;
mazzo[11]= Spade.due;
mazzo[12]= Spade.tre;
mazzo[13]= Spade.quattro;
mazzo[14]= Spade.cinque;
mazzo[15]= Spade.sei;
mazzo[16]= Spade.sette;
mazzo[17]= Spade.donna;
mazzo[18]= Spade.cavallo;
mazzo[19]= Spade.re;
mazzo[20]= Coppe.asso;
mazzo[21]= Coppe.due;
mazzo[22]= Coppe.tre;
mazzo[23]= Coppe.quattro;
mazzo[24]= Coppe.cinque;
mazzo[25]= Coppe.sei;
mazzo[26]= Coppe.sette;
mazzo[27]= Coppe.donna;
mazzo[28]= Coppe.cavallo;
mazzo[29]= Coppe.re;
mazzo[30]= Bastoni.asso;
mazzo[31]= Bastoni.due;
mazzo[32]= Bastoni.tre;
mazzo[33]= Bastoni.quattro;
mazzo[34]= Bastoni.cinque;
mazzo[35]= Bastoni.sei;
mazzo[36]= Bastoni.sette;
mazzo[37]= Bastoni.donna;
mazzo[38]= Bastoni.cavallo;
mazzo[39]= Bastoni.re;
for(int i=0; i<mazzo.length; i++){
System.out.println(mazzo.toString());
}
}
}
dove makeDenari, makeSpade, makeCoppe, makeBastoni, sono metodi di altrettanti classi che fanno una cosa del genere:
public static void makeDenari(){
asso= new Card(1,1,11);
due= new Card(1,2,0);
tre= new Card(1,3,10);
quattro= new Card(1,4,0);
cinque= new Card(1,5,0);
sei= new Card(1,6,0);
sette= new Card(1,7,0);
donna= new Card(1,8,2);
cavallo= new Card(1,9,3);
re= new Card(1,10,4);
}
ovviamente con valori diversi a secondo del seme.
come mai il metodo toString mi stampa sempre lo stesso valore e cioè:
seme:3 number: 10value: 4
ovvero mi stampa sempre l'ultimo oggetto Card istanziato ovvero il re di bastoni;
come posso risolvere questo problema?
Grazie in anticipo.