D00178-变压器设备漏油的检测数据集338张含VOC标签

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,这个功能描述可以通过Java代码来实现。下面是一个简单的实现示例: ```java import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Scanner; public class PokerGame { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请选择比较方式:1-张牌比较,2-两张牌比较"); int mode = scanner.nextInt(); System.out.println("请输入底牌数量:"); int bottomCardCount = scanner.nextInt(); List<String> poker = new ArrayList<>(); String[] colors = {"♠", "♥", "♣", "♦"}; String[] numbers = {"2", "A", "K", "Q", "J", "10", "9", "8", "7", "6", "5", "4", "3"}; for (String color : colors) { for (String number : numbers) { poker.add(color + number); } } poker.add("大王"); poker.add("小王"); Collections.shuffle(poker); List<String> bottomCards = new ArrayList<>(); for (int i = 0; i < bottomCardCount; i++) { bottomCards.add(poker.get(i)); } System.out.println("底牌为:" + bottomCards); List<String> cardsA = new ArrayList<>(); List<String> cardsB = new ArrayList<>(); for (int i = bottomCardCount; i < bottomCardCount + 5; i++) { cardsA.add(poker.get(i)); cardsB.add(poker.get(i + 5)); } System.out.println("用户A的手牌为:" + cardsA); System.out.println("用户B的手牌为:" + cardsB); if (mode == 1) { System.out.println("开始-张牌比较"); String maxCardA = getMaxCard(cardsA); String maxCardB = getMaxCard(cardsB); System.out.println("用户A的最大牌为:" + maxCardA); System.out.println("用户B的最大牌为:" + maxCardB); int result = compareCard(maxCardA, maxCardB); if (result == 0) { System.out.println("本局平局"); } else if (result > 0) { System.out.println("用户A赢了"); } else { System.out.println("用户B赢了"); } } else if (mode == 2) { System.out.println("开始两张牌比较"); String maxPairA = getMaxPair(cardsA); String maxPairB = getMaxPair(cardsB); System.out.println("用户A的最大对子为:" + maxPairA); System.out.println("用户B的最大对子为:" + maxPairB); int result = comparePair(maxPairA, maxPairB); if (result == 0) { System.out.println("本局平局"); } else if (result > 0) { System.out.println("用户A赢了"); } else { System.out.println("用户B赢了"); } } System.out.println("是否再玩一局?1-是,2-否"); int playAgain = scanner.nextInt(); if (playAgain == 1) { main(args); } else { System.out.println("游戏结束"); } } private static String getMaxCard(List<String> cards) { String maxCard = ""; for (String card : cards) { if (compareCard(card, maxCard) > 0) { maxCard = card; } } return maxCard; } private static String getMaxPair(List<String> cards) { String maxPair = ""; for (int i = 0; i < cards.size() - 1; i++) { for (int j = i + 1; j < cards.size(); j++) { String card1 = cards.get(i); String card2 = cards.get(j); if (card1.charAt(1) == card2.charAt(1)) { if (compareCard(card1, card2) > 0) { if (compareCard(card1, maxPair) > 0) { maxPair = card1; } } else { if (compareCard(card2, maxPair) > 0) { maxPair = card2; } } } } } return maxPair; } private static int compareCard(String card1, String card2) { if (card1.equals(card2)) { return 0; } String[] numbers = {"2", "A", "K", "Q", "J", "10", "9", "8", "7", "6", "5", "4", "3"}; int index1 = -1; int index2 = -1; for (int i = 0; i < numbers.length; i++) { if (card1.contains(numbers[i])) { index1 = i; } if (card2.contains(numbers[i])) { index2 = i; } } if (index1 > index2) { return 1; } else if (index1 < index2) { return -1; } else { String[] colors = {"♠", "♥", "♣", "♦"}; int colorIndex1 = -1; int colorIndex2 = -1; for (int i = 0; i < colors.length; i++) { if (card1.contains(colors[i])) { colorIndex1 = i; } if (card2.contains(colors[i])) { colorIndex2 = i; } } if (colorIndex1 > colorIndex2) { return 1; } else if (colorIndex1 < colorIndex2) { return -1; } else { return 0; } } } private static int comparePair(String pair1, String pair2) { if (pair1.equals(pair2)) { return 0; } String[] numbers = {"2", "A", "K", "Q", "J", "10", "9", "8", "7", "6", "5", "4", "3"}; int index1 = -1; int index2 = -1; for (int i = 0; i < numbers.length; i++) { if (pair1.contains(numbers[i])) { index1 = i; } if (pair2.contains(numbers[i])) { index2 = i; } } if (index1 > index2) { return 1; } else if (index1 < index2) { return -1; } else { String[] colors = {"♠", "♥", "♣", "♦"}; int colorIndex1 = -1; int colorIndex2 = -1; for (int i = 0; i < colors.length; i++) { if (pair1.contains(colors[i])) { colorIndex1 = i; } if (pair2.contains(colors[i])) { colorIndex2 = i; } } if (colorIndex1 > colorIndex2) { return 1; } else if (colorIndex1 < colorIndex2) { return -1; } else { return 0; } } } } ``` 这段代码实现了游戏的核心逻辑,包括选择比较方式、输入底牌数量、洗牌、抽牌、比较大小等功能。其中,`getMaxCard`函数用于找出一张牌最大的那张牌,`getMaxPair`函数用于找出一组牌中最大的对子,`compareCard`函数用于比较两张牌的大小,`comparePair`函数用于比较两个对子的大小。通过这些函数的组合,我们可以实现不同的比较方式和大小判断规则。最后,通过递归调用`main`函数实现了是否再玩一局的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值