问题描述
这个怎么没有输出啊?怎么写才对?我要输出牌publicclassCard{Stringcolor;charnum;publicvoidprint(){System.out.print(color+""+num);}}publicclassCards{Cardcard[]=newCard[52];publicvoidinit(){Stringcolor="";Stringnum="";for(inti=1;i<=4;i++){for(intj=1;j<=13;j++){num=j+"";switch(i){case1:color="红桃";case2:color="黑桃";case3:color="梅花";case4:color="方片";defeult:color="不存在";}switch(j){case11:num="J";case12:num="Q";case13:num="K";case1:num="A";defeult:num="不存在";}}}}publicvoidprint(){for(inti=0;i<=52;i++){if((i+1)%13==0)System.out.println();card[i].print();}}/**publicvoidshuffle(){Randomn=newRandom();inta[]=newint[52];for(inti=0;i<=52;i++)a[i]=n.nextInt(52)+1;}*/publicstaticvoidmain(String[]args){Cardc=newCard();c.print();}}
解决方案
解决方案二:
输出为null
解决方案三:
publicclassCards{publicclassCard{Stringcolor;Stringnum;publicvoidprint(){System.out.print(color+""+num);}}Cardcard[]=newCard[52];publicvoidinit(){Stringcolor="";Stringnum="";for(inti=0;i<4;i++){for(intj=0;j<13;j++){switch(i){case0:color="红桃";break;case1:color="黑桃";break;case2:color="梅花";break;case3:color="方片";break;default:color="不存在";break;}switch(j){case10:num="J";break;case11:num="Q";break;case12:num="K";break;case0:num="A";break;default:num=j+1+"";break;}Cardc=newCard();c.color=color;c.num=num;card[i*13+j]=c;}}}publicvoidprint(){for(inti=0;i<52;i++){card[i].print();if((i+1)%13==0)System.out.println();}}/***publicvoidshuffle(){Randomn=newRandom();inta[]=newint[52];*for(inti=0;i<=52;i++)a[i]=n.nextInt(52)+1;}*/publicstaticvoidmain(String[]args){Cardsc=newCards();c.init();c.print();}}