用ArrayList实现给3个人发牌功能,但老是报越界错误,实在看不出来有什么可以改的地方啊?请高手多多指教

一把米 2012-02-18 10:49:14
import java.util.ArrayList;

public class E1Divison {

public static void main(String[] args) {
play();
}

public static void play(){
String [] dcolor={"红桃","黑桃","方块","梅花"};
String [] dvalue={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};

ArrayList<String> list = new ArrayList<String>();
for(int i=0;i<dcolor.length;i++){
for(int j =0 ;j<dvalue.length;j++){
list.add(dcolor[i]+dvalue[j]);
}
}
//删除含这四张牌的对象
list.remove("红桃2");
list.remove("方块2");
list.remove("梅花2");
list.remove("方块A");

for(int dn=0;dn<=2;dn++){
System.out.println((dn+1)+"的牌是:");
for(int n=0;n<16;n++){
String resu = (String) list.get((int) (Math.random()*48));
System.out.print(resu+" ");
list.remove(resu);
}
System.out.println();
}
}

}
...全文
70 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq737604771 2012-02-18
  • 打赏
  • 举报
回复
String [] dcolor={"红桃","黑桃","方块","梅花"};
String [] dvalue={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};

ArrayList<String> list = new ArrayList<String>();
for(int i=0;i<dcolor.length;i++){
for(int j =0 ;j<dvalue.length;j++){
list.add(dcolor[i]+dvalue[j]);
}
}
//删除含这四张牌的对象
list.remove("红桃2");
list.remove("方块2");
list.remove("梅花2");
list.remove("方块A");

for(int dn=0;dn<=2;dn++){
System.out.println((dn+1)+"的牌是:");
for(int n=0;n<16;n++){
int a=(3-dn)*16-n;
String resu = (String) list.get((int) (Math.random()*a));
System.out.print(resu+" ");
list.remove(resu);
}
System.out.println();
}
}

看下帮你改了一下
一把米 2012-02-18
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 qq737604771 的回复:]
String [] dcolor={"红桃","黑桃","方块","梅花"};
String [] dvalue={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};

ArrayList<String> list = new ArrayList<String>();
for(int i=0;i<dcolor.length;i++)……
[/Quote]
你的那int a=(3-dn)*16-n;是什么意思??

50,528

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧