CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  J2SE / 基础类

各位帮忙看下这是怎么回事啊,在线等/

楼主fzycool(风之羽)2004-12-01 15:53:26 在 Java / J2SE / 基础类 提问

有代码如下:  
  import   java.util.*;  
  class   test1{  
  int   num;  
  int   type;  
  }  
   
  public   class   puke{  
   
   
  public   static   test1   player[][]=   new   test1[13][4];  
  puke(){  
          for(int   i=1;i<=13;i++){  
                  for(int   j=1;j<=4;j++){  
                          player[i-1][j-1]   =   new   test1();    
                          player[i-1][j-1].type=j;  
                  player[i-1][j-1].num=i;  
                }  
          }  
  }  
              public   static   void   main(String   args[]){  
          puke   p=new   puke();  
          List   play   =   Arrays.asList(p.player);  
          Collections.shuffle(play);  
          play.toArray(player);    
          for(int   i=0;i<13;i++){  
                  for(int   j=0;j<4;j++){  
                                  switch(player[i][j].type){  
                                          case   1:{System.out.print("黑桃"+player[i][j].num);break;}  
                                          case   2:{System.out.print("红桃"+player[i][j].num);break;}  
                                          case   3:{System.out.print("梅花"+player[i][j].num);break;}  
                                          case   4:{System.out.print("方片"+player[i][j].num);break;}  
                                          default:System.out.print("出错");  
                                  }  
                  System.out.println();  
                  }  
          }  
          }  
  }  
  }  
  运行后出现以现错误:  
  红桃5   黑桃2   红桃10   红桃11   java.lang.ArrayIndexOutOfBoundsException:   4  
  at   puke.main(puke.java:54)  
  Exception   in   thread   "main"    
  看了半天看不懂是为什么?  
  帮帮忙啊.  
  在线等解决马上给分. 问题点数:20、回复次数:9Top

1 楼mydeman(漫步者)回复于 2004-12-01 16:06:01 得分 2

我这里运行正常!!Top

2 楼sgdb(神天月晓)回复于 2004-12-01 16:07:30 得分 2

数组越界  
  for(int   i=0;i<=12;i++){  
                  for(int   j=0;j<=3;j++){Top

3 楼fzycool(风之羽)回复于 2004-12-01 16:07:36 得分 0

不是吧,这么邪.Top

4 楼tom2005(随海奔跑)回复于 2004-12-01 16:11:16 得分 4

黑桃10  
  红桃10  
  梅花10  
  方片10  
  黑桃13  
  红桃13  
  梅花13  
  方片13  
  黑桃2  
  红桃2  
  梅花2  
  方片2  
  黑桃12  
  红桃12  
  梅花12  
  方片12  
  黑桃1  
  红桃1  
  梅花1  
  方片1  
  黑桃9  
  红桃9  
  梅花9  
  方片9  
  黑桃6  
  红桃6  
  梅花6  
  方片6  
  黑桃7  
  红桃7  
  梅花7  
  方片7  
  黑桃5  
  红桃5  
  梅花5  
  方片5  
  黑桃4  
  红桃4  
  梅花4  
  方片4  
  黑桃8  
  红桃8  
  梅花8  
  方片8  
  黑桃11  
  红桃11  
  梅花11  
  方片11  
  黑桃3  
  红桃3  
  梅花3  
  方片3  
   
  运行结果Top

5 楼fzycool(风之羽)回复于 2004-12-01 16:14:48 得分 0

import   java.util.*;  
    class   test{  
  test(){};  
  int   type;  
  int   num;  
  }  
  public   class   puke{  
        public   static   test   player[]=new   test[52];  
         
        puke(){  
              int   i,val=1,valt=1;  
              for(i=0;i<52;i++){  
                    player[i]=new   test();  
                    player[i].num=val;  
                      player[i].type=valt;  
              if(val==13)val=0;  
              if(valt==4)valt=0;  
              val++;  
              valt++;  
        }  
        }  
          public   static   void   main(String   args[]){  
          puke   p   =new   puke();  
          List   play=Arrays.asList(player);  
          Collections.shuffle(play);  
          play.toArray(player);  
          test   playerT[][]=new   test[4][13];  
          int   i=0,val,valt;  
          while(i<52){  
          for(val=0;val<4;val++){  
          for(valt=0;valt<13;valt++){  
          playerT[val][valt]=new   test();  
          playerT[val][valt].num=player[i].num;  
          playerT[val][valt].type=player[i].type;  
          i++;  
          }  
          }  
          }  
          for(val=0;val<4;val++){  
          for(valt=0;valt<13;val++){  
          switch(playerT[val][valt].type){  
                  case   1:{System.out.print("黑桃"+playerT[val][valt].num+"   ");break;}  
                  case   2:{System.out.print("红桃"+playerT[val][valt].num+"   ");break;}  
                  case   3:{System.out.print("红桃"+playerT[val][valt].num+"   ");break;}  
                  case   4:{System.out.print("方片"+playerT[val][valt].num+"   ");break;}  
                  default:{System.out.print("出错");break;}  
          }  
           
          }  
          System.out.println();  
           
          }  
           
           
           
          }  
  }  
  不好意思贴错了,是这一段代码,不好意思啊呵呵Top

6 楼tom2005(随海奔跑)回复于 2004-12-01 16:29:09 得分 2

for(valt=0;valt<13;valt++){  
          val++   改为valt++Top

7 楼catblue(佛家说:一粒沙中看世界。)回复于 2004-12-01 16:36:03 得分 2

java.util.List   play=Arrays.asList(player);Top

8 楼catblue(佛家说:一粒沙中看世界。)回复于 2004-12-01 16:37:59 得分 2

List   play=Arrays.asList(player);改为  
  java.util.List   play=Arrays.asList(player);  
  不然编译器告诉你会有歧异  
  因为awt里也有个List   的类Top

9 楼catblue(佛家说:一粒沙中看世界。)回复于 2004-12-01 16:40:41 得分 6

还有个地方就是  
  for(valt=0;valt<13;valt++){  
          val++   改为valt++  
  Top

相关问题

  • 各位大哥 给看下 这是怎么回事菜鸟问题 在线等 谢谢了
  • 各位帮我看看是怎么回事吧!
  • (fzymr)超级奇怪的问题!各位看看怎么回事?
  • 到底是怎么回事啊?各位帮我看看吧!!
  • 请各位帮我看看是怎么回事~
  • 各位高手,来看看这是怎么回事啊?
  • 请高手看看怎么回事????? 在线急等!!!
  • Turbo Pascal的bug!!,65537=1!!!各位高手看看是怎么回事?
  • 各位大大帮我看看我的oracle怎么回事?急啊!
  • 几张位图转avi的问题,各位看看怎么回事?

关键词

  • puke
  • test1

得分解答快速导航

  • 帖主:fzycool
  • mydeman
  • sgdb
  • tom2005
  • tom2005
  • catblue
  • catblue
  • catblue

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo