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);
}
}
}