第4周-从52张扑克牌中挑一张牌

问题及代码:
/*   
*Copyright (c)2015,烟台大学计算机与控制工程学院   
*All rights reserved.   
*文件名称:Cards.java   
*作    者:单昕昕   
*完成日期:2015年9月22日   
*版 本 号:v1.0   
*问题描述:输出一张牌的大小和花色。
*程序输入:无。
*程序输出:一张牌的大小和花色。
*/ 
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class Test
{
    public enum Rank
    {
        // 枚举
        Ace("Ace","Ace"), two("2","two"), three("3","three"), four("4","four"), five("5","five"), six("6","six"), seven

("7","seven"), eight("8","eight"), nine("9","nine"), ten("10","ten"), Jack("Jack","Jack"), Queen("Queen","Queen"), King

("King","King");
        private String code;
        private String description;
        Rank(String code, String description)
        {

            this.code = code;
            this.description = description;

        }
        public String getCode()
        {
            return code;
        }
        public void setCode(String code)
        {
            this.code = code;
        }
        public String getDescription()
        {
            return description;
        }
        public void setDescription(String description)
        {
            this.description = description;
        }
        public static ArrayList<Rank> list()
        {
            ArrayList<Rank> list= new ArrayList<Rank>();
            list.add(Ace);
            list.add(two);
            list.add(three);
            list.add(four);
            list.add(five);
            list.add(six);
            list.add(seven);
            list.add(eight);
            list.add(nine);
            list.add(ten);
            list.add(Jack);
            list.add(Queen);
            list.add(King);
            return list;

        }
    }
    public enum Suit
    {
        // 枚举
        Clubs("Clubs","Club"), Diamonds("Diamonds","Diamond"), Hearts("Hearts","Heart"), Spades("Spades","Spade");
        private String code;
        private String description;
        Suit(String code, String description)
        {

            this.code = code;
            this.description = description;

        }
        public String getCode()
        {
            return code;
        }
        public void setCode(String code)
        {
            this.code = code;
        }
        public String getDescription()
        {
            return description;
        }
        public void setDescription(String description)
        {
            this.description = description;
        }
        public static ArrayList<Suit> list2()
        {
            ArrayList<Suit> list2= new ArrayList<Suit>();
            list2.add(Clubs);
            list2.add(Diamonds);
            list2.add(Hearts);
            list2.add(Spades);
            return list2;
        }
    }
    public static void main(String[] args)
    {
        ArrayList<Rank>list=Rank.list();
        Random random1= new Random();
        int  num1=random1.nextInt(list.size())+1;
        System.out.print(list.get(num1).getCode());
        System.out.print(" ");
        ArrayList<Suit>list2=Suit.list2();
        Random random2= new Random();
        int  num2=random2.nextInt(list2.size())+1;
        System.out.println(list2.get(num2).getCode());
    }
}


贴上另外一种:

import java.util.*;
public class Test {
	public static void main(String[] args) {
    String []suits={"Spades","Hearts","Diamonds","Clubs"};
    String []ranks={"Ace","2","3","4","5","6","7","8","9","10","Jack","Queen","King"};
    Random random = new Random();
    int t1=Math.abs(random.nextInt())%13;
    int t2=Math.abs(random.nextInt())%4;
    System.out.print("The card you picked is ");
    System.out.print(suits[t1]);
    System.out.print(" of ");
    System.out.println(ranks[t2]);
	}
}


运行结果:











知识点总结:
随机读取枚举类型中的数据。

学习心得:

感觉比较麻烦,我先从网上找的相关代码修改成为己用的~

学长教了我另外一种比较简单的方法,我要试试~~

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值