模拟扑克牌

package zuoye3;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;

public class Pok {

    /**
     * 扑克
     * 花色:♠ ♥ ♦ ♣
     *   牌号:A 2 3 4 5 6 7 8 9 10 J Q K
     *   大王 小王
     * 1.生成一副牌
     * 2.然后发牌
     */
        //一副牌集合
        private List<PokCard> pkcList;
        //无参构造器,初始化牌
        public Pok() {
            String[] colors = {"♠","♥","♦","♣"};
            pkcList = new ArrayList<>();
            //生成牌
            //A
            for (int i = 0; i < colors.length; i++) {//四种花色
                PokCard pc = new PokCard( colors[i],"A");
                pkcList.add(pc);
            }
            //2-10
            for (int i = 2; i <= 10 ; i++) {
                for (int j = 0; j < colors.length; j++) {
                    PokCard pc = new PokCard(colors[j], i + " ");
                    pkcList.add(pc);
                }
            }
            //J
            for (int i = 0; i < colors.length; i++) {
                PokCard pc = new PokCard(colors[i], "J");
                pkcList.add(pc);
            }
            //Q
            for (int i = 0; i < colors.length; i++) {
                PokCard pc = new PokCard(colors[i], "Q");
                pkcList.add(pc);
            }
            //K
            for (int i = 0; i < colors.length; i++) {
                PokCard pc = new PokCard(colors[i], "K");
                pkcList.add(pc);
            }
            //大王,小王
            PokCard pc1 = new PokCard("", "大王");
            pkcList.add(pc1);
            PokCard pc2 = new PokCard("", "小王");
            pkcList.add(pc2);
        }
        //洗牌
        public void xp(){
            //获取牌
            List<PokCard> pkcList = this.getPkcList();
            Object[] total = pkcList.toArray();
            //洗牌是随机的
            Random r = new Random();
            for (int j = 0; j < total.length; j++) {
                int sj = r.nextInt(54);
                System.out.print(total[sj]+" ");
            }
            System.out.println();
        }
        //发牌
        public void deal(){
            //获取牌
            List<PokCard> pkcList = this.getPkcList();
            Object[] total = pkcList.toArray();
            //存储三个玩家的牌
            Object[][] plays = new Object[3][17];
            //存储当前剩余牌的数量
            int leftNum = 54;
            //发牌是随机的
            Random r = new Random();
            //分别把牌分给3个人,留三张底牌,也就是说一个人能分到17张牌
            for (int i = 0; i < 17; i++) {
                //为每个人发牌
                for (int j = 0; j < plays.length; j++) {
                    //System.out.println(j);
                    int ranNumber = r.nextInt(leftNum);
                    //发牌
                    plays[j][i] = total[ranNumber];
                    //移动发的牌
                    total[ranNumber] = total[leftNum - 1];

                    leftNum--;
                }

            }

            for (int i = 0; i < plays.length; i++) {
                System.out.print("玩家:"+i+"的牌");
                for (int j = 0; j < plays[i].length; j++) {
                    System.out.print(plays[i][j]);
                }
                System.out.println();
            }
            System.out.print("底牌:");
            for(int i = 0;i < 3;i++){
                System.out.print(total[i]);
            }

            System.out.println();

        }
        public List<PokCard> getPkcList() {
            return pkcList;
        }

        public void setPkcList(List<PokCard> pkcList) {
            this.pkcList = pkcList;
        }

        public Pok(List<PokCard> pkcList) {
            this.pkcList = pkcList;
        }
    }

package zuoye3;
 
/**
 * 一张扑克牌类
 *  花色:♠ ♥ ♦ ♣
 *  * 牌号:A 2 3 4 5 6 7 8 9 10 J Q K
 *  * 大王 小王
 */
public class PokCard {
    private String color;
    private String cardNumber;
 
    @Override
    public String toString() {
        return color + "" +cardNumber;
    }
 
    public PokCard(String color, String cardNumber) {
        this.color = color;
        this.cardNumber = cardNumber;
    }
 
    public PokCard() {
    }
 
    public String getColor() {
        return color;
    }
 
    public void setColor(String color) {
        this.color = color;
    }
 
    public String getCardNumber() {
        return cardNumber;
    }
 
    public void setCardNumber(String cardNumber) {
        this.cardNumber = cardNumber;
    }
}

package zuoye3;
 
public class Test {
    public static void main(String[] args) {
                Pok p = new Pok();
                p.deal();
            }

2.国庆倒计时

package zuoye3;
 
 
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
 
public class time1 {
    public static class DaoJiShi {
        public static void main(String[] args) {
            //现在时间
            Date date1=new Date();
            System.out.println("现在时间");
            int year = date1.getYear()+1900;
            int month = date1.getMonth()+1;
            int date11 = date1.getDate();
            int hours = date1.getHours();
            int minutes = date1.getMinutes();
            int seconds = date1.getSeconds();
            long nowtime= date1.getTime();
            System.out.println(year+"年"+month+"月"+date11+"日 "+hours+":"+minutes+":"+seconds);
            //结束日期
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss E");
            Date date3= null;
            try {
                date3 = sdf.parse("2022-10-01 00:00:00");
            } catch (ParseException e) {
                e.printStackTrace();
            }
            long endtime=date3.getTime();
            try {
                long midtime=endtime-nowtime;
                long nd = 1000*24*60*60;
                long nh = 1000*60*60;
                long nm = 1000*60;
                long ns = 1000;
                long midday=midtime/nd;
                long hh=midtime%nd/nh;
                long mm=midtime%nd%nh/nm;
                long ss=midtime%nd%nh%nm/ns;
                System.out.println("离国庆假期还有:"+"\n"+midday+"天"+hh+"时"+mm+"分"+ss+"秒");
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
 }
 

 3.使用Map集合来做一个不同姓氏人数的统计


package zuoye3;
 
import java.util.HashMap;
import java.util.Map;
 
public class xing {
    public static class Xingshi {
        public static void main(String[] args) {
            String[] name = new  String[]{"张三","李四","张二","刘一","王可","王三","张七","李白","张四"};
            Map map = new HashMap<>();
            String zhang = null;
            String wang = null;
            String li = null;
            String liu = null;
            int num = 0;
            int num1 = 0;
            int num2 = 0;
            int num3 = 0;
            for (int i =0 ; i<name.length;i++) {
                if (name[i].contains("张")){
                    zhang = name[i];
                    num++;
                }else if (name[i].contains("李")){
                    li = name[i];
                    num1++;
                }else if (name[i].contains("刘")){
                    liu = name[i];
                    num2++;
                }else if (name[i].contains("王")){
                    wang = name[i];
                    num3++;
                }
            }
            map.put(zhang.charAt(0),num);
            map.put(li.charAt(0),num1);
            map.put(liu.charAt(0),num2);
            map.put(wang.charAt(0),num3);
            System.out.println(map);
        }
    }

}

设计一个敏感词过滤程序


package zuoye3;
 
 
import java.util.Scanner;
 
class ad {
    public static class Mgan {
 
        private String[] str={"枪","死","打劫","共产党"};
        public static void main(String[] args) {
            Mgan mgan = new Mgan();
            mgan.test();
        }
        public void test(){
            System.out.println("请输入第一个字符串:");
            Scanner sc= new Scanner(System.in);
            String s=sc.next();
            for (String word:str) {
                if (word.contains(word)){
                    int len=word.length();
                    String th="*";
                    for (int j = 0; j < len-1; j++) {
                        th+="*";
                    }
                    s=s.replace(word, th);
                }
            }
            System.out.println(s);
        }
 
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值