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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

第三家卡牌 終于搞定 求大神指點(diǎn)

package?com.liuyang;

import?java.util.ArrayList;
import?java.util.List;

public?class?Card?{
?public?String?ID;
?public?String?Name;
?public?List<poker>?pokerCard;
?public?Card(){
??
?}
?
?public?Card(String?ID,String?Name){
??this.ID=ID;
??this.Name=Name;
??this.pokerCard?=new?ArrayList<poker>();
?}

?public?String?getID()?{
??return?ID;
?}

?public?String?getName()?{
??return?Name;
?}

?public?List<poker>?getPokerCard()?{
??return?pokerCard;
?}

}
package?com.liuyang;

import?java.util.Arrays;
import?java.util.List;


public?class?poker?implements?Comparable<poker>{
?
??public?String?value;//撲克牌面值
??public?String?color;//撲克牌花色
??
??
???public?poker(String?value,String?color){
???this.value=value;
???this.color=color;
??}
???public?poker()?{
??//?TODO?自動(dòng)生成的構(gòu)造函數(shù)存根
?}

??public?String?getValue()?{
???return?value;
??}

??public?void?setValue(String?value)?{
???this.value?=?value;
??}

??public?String?getColor()?{
???return?color;
??}

??public?void?setColor(String?color)?{
???this.color?=?color;
??}
??@Override
??public?int?compareTo(poker?o)?{
???//?TODO?自動(dòng)生成的方法存根
???List<String>?valueBase?=?Arrays.asList("K","Q","J","10","9","8","7","6","5","4","3","2","A");
?????????List<String>?colorBase?=?Arrays.asList("黑桃","紅桃","梅花","方片");
?????????if(valueBase.indexOf(this.value)?==?valueBase.indexOf(o.value))
?????????????return?Integer.valueOf(colorBase.indexOf(this.color)).compareTo(Integer.valueOf(colorBase.indexOf(o.getColor())));
?????????else?
?????????????return?Integer.valueOf(valueBase.indexOf(this.value)).compareTo(Integer.valueOf(valueBase.indexOf(o.getValue())));
??}
??

}
package?com.liuyang;

import?java.util.ArrayList;
import?java.util.Collections;
import?java.util.HashMap;
import?java.util.List;
import?java.util.Map;
import?java.util.Scanner;
import?java.util.Set;

public?class?Test?{
?public?List<poker>?pokerTo;
?private?int?COLORNUM?=?13;
?public?int?CARDNUM?=?52;
?public?Map<String,Card>?cardS;
?public?Test(){
??this.cardS=new?HashMap<String,?Card>();
??pokerTo=new?ArrayList<poker>();
?}
?

?public?static?void?main(String[]?args)?{
??//?TODO?自動(dòng)生成的方法存根
??Test?t=new?Test();
??System.out.println("----------創(chuàng)建撲克牌-----------");
??t.PokerDeal();?//創(chuàng)建撲克;
??System.out.println("----------撲克牌創(chuàng)建成功---------");
??System.out.print("撲克含有:");
??t.testPoker();?//輸出撲克所包含牌;
??System.out.println();
??System.out.println("-----------開始洗牌-------------");
??t.pokerWash();?//打亂撲克順序;
??System.out.println("-----------洗牌結(jié)束-------------");
??System.out.println("-----------創(chuàng)建玩家-------------");
??t.TestIDName();?//創(chuàng)建玩家輸入玩家ID,Name;
??System.out.println("-----------開始發(fā)牌-------------");
??t.pokerDeal();??//將撲克發(fā)到玩家手中;
??System.out.println("-----------發(fā)牌結(jié)束-------------");
??System.out.println("-----------游戲開始-------------");
??t.TestPokerUp();?//輸出玩家手中撲克;
??t.pokerSort();???//比較玩家手中撲克大??;
??}
?
?
?public?void?PokerDeal(){
??String?valueB[]=?{"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
??String?colorB[]=?{"黑桃","紅桃","梅花","方片"};
??for?(int?j?=?0;?j?<?CARDNUM/COLORNUM;j++)?{
???for?(int?i?=?0;?i?<?COLORNUM;?i++)?{
????poker?pokers=new?poker(valueB[i],colorB[j]);//向pokers臨時(shí)對(duì)象中保存poker牌組數(shù)據(jù);
????pokerTo.add(pokers);???????//添加到pokerTo中;
???}
??}???
?????}
?
?
?????public?void?testPoker(){
????????int?size=pokerTo.size();?????????//用size對(duì)pokerTo進(jìn)行輸出
????????for?(int?i?=?0;?i?<?size;?i++)?{
?????????poker?cr?=?(poker)pokerTo.get(i);??//調(diào)用pokerTo中的poker數(shù)據(jù),保存在臨時(shí)對(duì)象cr中;
?????????System.out.print(cr.color+cr.value+",");?
?????????????????}
????????????}
?????
?????
?????public?void?pokerWash(){
?????????Collections.shuffle(pokerTo);??//用Collections.shuffle()語句把順序打亂;

}


?public?void?TestIDName()?{
??Scanner?to=new?Scanner(System.in);
??int?i=0;????//需要更改游戲參與人數(shù)只需要更改while中i的最大值
??while?(i<2)?{?
???System.out.println("請(qǐng)輸入第"+(i+1)+"位玩家ID和姓名");
???System.out.print("輸入ID:");
???String?ID=to.next();???
???Card?ca=cardS.get(ID);
???if(ca==null){????//確認(rèn)card中是否有該學(xué)生ID;
????System.out.print("請(qǐng)輸入學(xué)生姓名:");
????String?Name=to.next();
????Card?stu=new?Card(ID,?Name);
????cardS.put(ID,?stu);
????i++;
???}else?{
?????System.out.println("輸入有誤");
????}continue;
????????}?
??for?(String?a?:?cardS.keySet())?{??????//用fore循環(huán)輸出玩家信息
???System.out.println("----歡迎玩家:"+cardS.get(a).ID+"???"+cardS.get(a).Name);
??}
?}
?
?
?public?void?pokerDeal(){??//發(fā)牌
??poker?poker;
????????for?(int?i?=?0;?i?<?2;?i++)?{???//需要更改玩家手牌數(shù)量,只需要更改i最大值;
?????????Set<String>?key=cardS.keySet();
?????????for?(String?a?:?key)?{
?????????????poker?=?pokerTo.get(0);??//取出poker中的第一張牌
?????????????pokerTo.remove(0);???????//把poker中的第一張牌刪除
?????????????System.out.println(cardS.get(a).Name+"拿牌");?
???????????????????cardS.get(a).getPokerCard().add(poker);???//將取出的牌交給玩家
???????????????????}
?????????}?
????????}
?
?
?public?void?pokerSort(){
??poker?b?=?null;????//創(chuàng)建放牌的臨時(shí)變量
??Card?d=null;???????//創(chuàng)建放玩家信息的臨時(shí)變量
??for?(String?a?:?cardS.keySet())?{
???Collections.sort(cardS.get(a).pokerCard);????//通過collections.sort對(duì)玩家手牌進(jìn)行排序;
???List<com.liuyang.poker>?s=cardS.get(a).getPokerCard();??
????????????poker?ss=s.get(0);???????//將玩家排序后最大的牌放入臨時(shí)變量中????????????
????????????System.out.println("玩家"+cardS.get(a).Name+"最大手牌為:"+ss.color+ss.value);
????????????if(b==null||ss.compareTo(b)<0){??
?????????????b=ss;
?????????????d=cardS.get(a);?????//存放牌最大的玩家的手牌和信息
????????????}
??}
??System.out.println("第"+d.ID+"名玩家"+d.Name+"獲勝,最大手牌為"+b.value+b.color);??//輸出
?}
?
?
?public?void?TestPokerUp(){????//通過雙for循環(huán)輸出玩家手中的牌
?????????for?(String?a?:?cardS.keySet())?{
??????????System.out.println(cardS.get(a).Name+"手牌為");
????????????????for?(poker?poker2?:?cardS.get(a).getPokerCard())?{
?????????????????System.out.print(poker2.color+poker2.value);?
?????????????????System.out.println("");
????????????????}
?????????}
?}
?}


正在回答

4 回答

重寫的equals方法好像有問題喔

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

發(fā)光的蜜蜂 提問者

沒有問題啊。。額 沒準(zhǔn)有 如果有 您幫我指點(diǎn)下。。我實(shí)在沒看出來
2016-05-19 回復(fù) 有任何疑惑可以回復(fù)我~
#2

ran1021 回復(fù) 發(fā)光的蜜蜂 提問者

啊,是我理解錯(cuò)了。沒有錯(cuò)的。。
2016-05-19 回復(fù) 有任何疑惑可以回復(fù)我~

大神好厲害!??!大神是帥逼!!!

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

能問下,在重寫的compaqreTo()方法中,list中為什么能用indexOf()方法查找到this.value的位置嗎?不是特別理解

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

發(fā)光的蜜蜂 提問者

我也是試了半天 才發(fā)現(xiàn)同一類下可以直接this.value 并且調(diào)用相應(yīng)的值 然后就用了。。還有 我沒有太明白你的問題 如果是this.value怎么找到的牌 是因?yàn)橛性谡{(diào)用compaqreTO方法前往poker中存儲(chǔ)過牌。。好吧 我也是新手說的不一定對(duì)。。
2016-05-19 回復(fù) 有任何疑惑可以回復(fù)我~

非常不錯(cuò)

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

舉報(bào)

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

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

進(jìn)入課程

第三家卡牌 終于搞定 求大神指點(diǎn)

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

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

幫助反饋 APP下載

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

公眾號(hào)

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