java扑克牌比大小_java入门最后一章 简易扑克牌比较大小

package com.practice.zhipai;

import java.util.ArrayList;

import java.util.Collections;

import java.util.List;

import java.util.Scanner;

public class PracticeZhiPai {

public List list;

public String tempStr;

public List listUser;

public List user1List;//用户1的手牌

public List user2List;//用户2的手牌

public void createList(){

list = new ArrayList();

for (int i = 0; i < 4; i++) {

if (i==0) {

tempStr="黑桃";

}

else if (i==1) {

tempStr="红桃";

}

else if (i==2) {

tempStr="梅花";

}

else{

tempStr="方片";

}

for (int j = 1; j <= 13; j++) {

if (j==1) {

list.add(tempStr+"A");

}

else if(j==11){

list.add(tempStr+"J");

}

else if(j==12){

list.add(tempStr+"Q");

}

else if(j==13){

list.add(tempStr+"K");

}

else{

list.add(tempStr+j);

}

}

}

for (String string : list) {

System.out.print(string+",");

}

System.out.println("-----------扑克牌创建成功--------------");

}

public void xiPai(){

System.out.println("-----------开始洗牌--------------");

Collections.shuffle(list);

System.out.println("-----------洗牌结束--------------");

}

public void createUser(){

listUser =new ArrayList();

System.out.println("-----------创建玩家--------------");

Scanner scan = new Scanner(System.in);

for (int i = 0; i < 2; i++) {

System.out.println("-----------请输入第"+(i+1)+"位玩家的id--------------");

String id= scan.next();

System.out.println("-----------请输入第"+(i+1)+"位玩家的姓名--------------");

String name = scan.next();

User user = new User(id, name);

listUser.add(user);

}

for (User user : listUser) {

System.out.println("欢迎玩家"+user.getName());

}

}

public void faPai(){

System.out.println("-----------开始发牌--------------");

user1List = new ArrayList();

user2List = new ArrayList();

user1List.add(list.get(0));

user2List.add(list.get(1));

user1List.add(list.get(2));

user2List.add(list.get(3));

System.out.println("-----------发牌结束--------------");

}

public void comparePai(){

String user1Max;

String user2Max;

PracticeZhiPai pz = new PracticeZhiPai();

//比较user1手牌哪个大

//result=0 相等 result=1 a > b result=-1 a < b

int result = pz.compareA(user1List.get(0), user1List.get(1));

if (result == 0) {

user1Max = user1List.get(0);

System.out.println("User1两张牌一样大");

}

else if (result == -1) {

user1Max = user1List.get(1);

System.out.println("User1大的牌是"+user1List.get(1));

}

else {

user1Max = user1List.get(0);

System.out.println("User1大的牌是"+user1List.get(0));

}

//比较user2手牌哪个大

//result=0 相等 result=1 a > b result=-1 a < b

int result1 = pz.compareA(user2List.get(0), user2List.get(1));

if (result1 == 0) {

user2Max = user2List.get(0);

System.out.println("User2两张牌一样大");

}

else if (result1 == -1) {

user2Max = user2List.get(1);

System.out.println("User2大的牌是"+user2List.get(1));

}

else {

user2Max = user2List.get(0);

System.out.println("User2大的牌是"+user2List.get(0));

}

//比较两个人最大的手牌

int finalResult = pz.compareA(user1Max, user2Max);

if (finalResult == 0) {

System.out.println("平局");

}

else if (finalResult == -1) {

System.out.println("User2获胜");

}

else {

System.out.println("User1获胜");

}

//打印每个用户的手牌

for (int i = 0; i < 2; i++) {

System.out.println("User1的手牌是:"+user1List.get(i));

}

//打印每个用户的手牌

for (int i = 0; i < 2; i++) {

System.out.println("User2的手牌是:"+user2List.get(i));

}

}

public int compareA(String a,String b){

int u1;

if (a.substring(2).equals("J")) {

u1=11;

}

else if (a.substring(2).equals("Q")){

u1 = 12;

}

else if (a.substring(2).equals("K")){

u1=13;

}

else if (a.substring(2).equals("A")){

u1=1;

}

else{

u1=Integer.parseInt(a.substring(2));

}

int u2;

if (b.substring(2).equals("J")) {

u2=11;

}

else if (b.substring(2).equals("Q")){

u2 = 12;

}

else if (b.substring(2).equals("K")){

u2=13;

}

else if (b.substring(2).equals("A")){

u2=1;

}

else{

u2=Integer.parseInt(b.substring(2));

}

//return 1表示a大于b return -1表示a小于b return 0表示相等

if (u1 > u2) {

return 1;

}

else if (u1 < u2) {

return -1;

}

else{

//取是什么花色的

if (a.substring(0,2).equals("黑桃")) {

//数字一样 花色也一样 那就是一样大

if (b.substring(0,2).equals("黑桃")) {

return 0;

}

else if (b.substring(0,2).equals("红桃")) {

return 1;

}

else if (b.substring(0,2).equals("梅花")) {

return 1;

}

else if (b.substring(0,2).equals("方片")) {

return 1;

}

}

else if (a.substring(0,2).equals("红桃")) {

if (b.substring(0,2).equals("黑桃")) {

return -1;

}

else if (b.substring(0,2).equals("红桃")) {

return 0;

}

else if (b.substring(0,2).equals("梅花")) {

return 1;

}

else if (b.substring(0,2).equals("方片")) {

return 1;

}

}

else if (a.substring(0,2).equals("梅花")) {

if (b.substring(0,2).equals("黑桃")) {

return -1;

}

else if (b.substring(0,2).equals("红桃")) {

return -1;

}

else if (b.substring(0,2).equals("梅花")) {

return 0;

}

else if (b.substring(0,2).equals("方片")) {

return 1;

}

}

//(a.substring(0,2).equals("方片"))

else{

if (b.substring(0,2).equals("黑桃")) {

return -1;

}

else if (b.substring(0,2).equals("红桃")) {

return -1;

}

else if (b.substring(0,2).equals("梅花")) {

return -1;

}

else if (b.substring(0,2).equals("方片")) {

return 0;

}

}

}

//不能走到这里

return -2;

}

public static void main(String[] args) {

// TODO Auto-generated method stub

System.out.println("-----------创建扑克牌--------------");

PracticeZhiPai pp = new PracticeZhiPai();

pp.createList();

pp.xiPai();

pp.createUser();

pp.faPai();

pp.comparePai();

}

}

class User.java

package com.practice.zhipai;

public class User {

public User(String id,String name) {

// TODO Auto-generated constructor stub

this.id = id;

this.name = name;

}

public String getId() {

return id;

}

public void setId(String id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

private String id;

private String name;

}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值