A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王雷 中级黑马   /  2012-9-27 23:24  /  893 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. class Test6
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 Poker[] ps=PokerTools.getPokers();//调用静态方法得到52张牌

  6.                 //将这些牌都打印出来
  7.                 for(int i=0;i<ps.length;i++){
  8.                        
  9.                         if(i%13==0){ //13张牌进行换行
  10.                                 System.out.println();
  11.                         }
  12.                         System.out.print(ps[i].getColor()+ps[i].getNumber()+"  ");
  13.                 }
  14.         }
  15. }


  16. class PokerTools
  17. {
  18.         static String[] cs={"黑桃","红桃","方块","梅花"};

  19.         static String[] ns={"2","3","4","5","6","7","8","9","10","J","Q","K","A"};


  20.         /*
  21.                 这个方法得到52张扑克牌
  22.         */
  23.         public static Poker[] getPokers(){
  24.                
  25.                 Poker[] ps=new Poker[cs.length*ns.length];

  26.                 int index=0;

  27.                 //静态的属性可以直接使用类名调用
  28.                 for(int i=0;i<PokerTools.cs.length;i++){
  29.                        
  30.                         //在静态方法中只能使用静态成员       
  31.                         for(int j=0;j<ns.length;j++){
  32.                                 /*
  33.                                 //使用的无参构造
  34.                                 Poker p=new Poker();

  35.                                 p.setColor(PokerTools.cs[i]);
  36.                                 p.setNumber(ns[j]);
  37.                                 //ps[index++]=p;
  38.                                 */
  39.                                 //使用有参构造
  40.                                 ps[index++]=new Poker(PokerTools.cs[i],ns[j]);

  41.                                
  42.                         }
  43.                 }

  44.                 return ps;
  45.         }
  46. }


  47. class Poker
  48. {
  49.         private String color; //私有化的实例属性,这些属性属于对象
  50.         private String number;

  51.         Poker(){
  52.        
  53.         }
  54.         /*
  55.                 构造方法 :用来初始化对象  
  56.         */
  57.         Poker(String color,String number){ //这两个是局部
  58.                
  59.                 this.color=color;
  60.        
  61.                 this.number=number;
  62.         }


  63.         /*
  64.                 通过get  set方法 将属性封装
  65.         */       
  66.         public void setColor(String color){ //局部
  67.                 //color=color 这时这两个都是局部
  68.                 this.color=color;
  69.         }

  70.         public void setNumber(String number){ //局部
  71.                 this.number=number;
  72.         }

  73.         public String getColor(){
  74.                
  75.                 return color;//这时在这个方法中就一个color,this可以省略
  76.         }
  77.         public String getNumber(){
  78.                 return number;
  79.         }

  80. }
  81. 这个是求出52长扑克牌的程序,现在想洗牌,不过还没学随机所以有没有大神来个方法洗牌啊
复制代码

评分

参与人数 1技术分 +1 收起 理由
唐志兵 + 1 赞一个!

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马