第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

提交大作業(yè),成功運行

【player】類:


package player;


import card.Card;

import java.util.ArrayList;

import java.util.Collections;

import java.util.List;


public class Player {

public int id;

public String name;

public List<Card> myCards;


public Player(int id, String name){

this.id = id;

this.name = name;

this.myCards = new ArrayList<Card>();

}


public void getCard(Card c){

System.out.println("-----玩家"+this.name+ '-'+ "拿牌");

myCards.add(c);

}


// 獲取最大權(quán)值

public int getMaxWeight() {

Card item = Collections.max(myCards);

System.out.println("玩家:"+ this.name + "最大手牌:"+ item.name);

return item.weight;

}

}



【card類】

package card;


public class Card implements Comparable<Card>{

// 撲克牌權(quán)值 = 黑/紅/梅/方(1/2/3/4) * 100 + 點數(shù)(A為14)

public int weight;

// 卡牌名稱 如 '紅桃A'

public String name;


public Card(int w, String name) {

this.weight = w;

this.name = name;

}


@Override

public int compareTo(Card c) {

if (this.weight > c.weight) return 1;

if (this.weight == c.weight) return 0;

else return -1;

}

}



【Main 】

import java.util.ArrayList;

import java.util.Collection;

import java.util.Collections;

import java.util.HashMap;

import java.util.HashSet;

import java.util.InputMismatchException;

import java.util.Map;

import java.util.Random;

import java.util.Scanner;

import java.util.List;

import java.util.Map.Entry;


import java.util.Set;


import card.Card;

import player.Player;


public class Main {


// 花色對應(yīng)權(quán)值的Map

public Map<String, Integer> codeMap;

// 點數(shù)對應(yīng)權(quán)值的Map

public Map<String, Integer> numMap;

// 撲克牌

public List<Card> cards;

// 玩家

public List<Player> players;


public Main() {

this.codeMap = new HashMap<String, Integer>();

this.numMap = new HashMap<String, Integer>();

this.cards = new ArrayList<Card>();

this.players = new ArrayList<Player>();

}


public static void main(String[] args) {

Main m = new Main();

m.genNumMap();

m.genCodeMap();

m.genCards();


// 生成玩家

int i = 0;

while (i<2) {

Scanner sc = new Scanner(System.in);

System.out.println("請輸入玩家ID:");

try {

int id = sc.nextInt();

System.out.println("請輸入玩家名稱");

String name = sc.next();

m.players.add(new Player(id, name));

i++;

} catch (InputMismatchException e) {

System.out.println("類型錯誤,請重新輸入");

}

}


// 發(fā)牌

Player p1 = m.players.get(0);

Player p2 = m.players.get(1);

p1.getCard(m.playerGetCard(52));

p2.getCard(m.playerGetCard(51));

p1.getCard(m.playerGetCard(50));

p2.getCard(m.playerGetCard(49)); // 取了牌 牌會變少


// 計算結(jié)果

int p1Weight = p1.getMaxWeight();

int p2Weight = p2.getMaxWeight();


// 輸出結(jié)果

System.out.println(p1Weight);

System.out.println(p2Weight);

if(p1Weight > p2Weight) {System.out.println(p1.name+"獲勝!");}

if(p1Weight == p2Weight) {System.out.println("平局!");}

if(p1Weight < p2Weight); {System.out.println(p2.name+"獲勝!");}


System.out.println("---------------雙方手牌公示------------");

System.out.print(p1.name+":");

for(Card c:p1.myCards) {

System.out.print(c.name+ ",");

}

System.out.println("\n--- ");

System.out.print(p2.name+":");

for(Card c:p2.myCards) {

System.out.print(c.name+ ",");

}

System.out.println("\n--- ");


System.out.println("---------------底牌公示------------");

for (Card c : m.cards) {

System.out.print(c.name + ',');

}

}


public void genCodeMap() {

codeMap.put("黑桃", 400);

codeMap.put("紅桃", 300);

codeMap.put("梅花", 200);

codeMap.put("方塊", 100);

System.out.println("生成花色權(quán)重表:");

System.out.println(codeMap);

System.out.println("------------------------------------------------------------");

}


public void genNumMap() {

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

numMap.put(Integer.toString(i), i);

}

numMap.put("J", 11);

numMap.put("Q", 12);

numMap.put("K", 13);

numMap.put("A", 14);


System.out.println("生成點數(shù)權(quán)重表:");

System.out.println(numMap);

System.out.println("------------------------------------------------------------");

}


// 生成撲克牌

public void genCards() {

System.out.println("生成撲克牌并把牌洗整齊");

for (Entry<String, Integer> numItem : numMap.entrySet()) {

for (Entry<String, Integer> codeItem : codeMap.entrySet()) {

cards.add(new Card(numItem.getValue() + codeItem.getValue(), codeItem.getKey() + numItem.getKey()));

}

}

Collections.sort(cards); // 把牌洗整齊

for (Card c : cards) {

System.out.print(c.name + ',');

}

System.out.println("\n------------------------------------------------------------");


System.out.println("把牌順序打亂");

Collections.shuffle(cards); // 把牌打亂

for (Card c : cards) {

System.out.print(c.name + ',');

}

System.out.println("\n------------------------------------------------------------");

}


public Card playerGetCard(int valume){

int random = (int) (Math.random() * valume);

Card temp = cards.get(random);

cards.remove(random);

return temp;

}


}


正在回答

2 回答

這個不對,他這個是按照花色排序,要改一下


0 回復(fù) 有任何疑惑可以回復(fù)我~

兄弟,你這個平局咋回事啊


0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

慕俠9254707

把平局那個代碼刪掉就行
2019-02-28 回復(fù) 有任何疑惑可以回復(fù)我~
#2

慕俠9254707

再把黑,紅,梅,方后面的權(quán)重改成4,3,2,1就可以了
2019-03-01 回復(fù) 有任何疑惑可以回復(fù)我~
#3

慕移動2145274 回復(fù) 慕俠9254707

嗯,好的
2019-03-04 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消
Java入門第三季
  • 參與學(xué)習(xí)       409767    人
  • 解答問題       4510    個

Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧

進入課程

提交大作業(yè),成功運行

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號