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

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

寫了一下午,代碼上傳了,請(qǐng)大家指點(diǎn)一二

個(gè)人寫的時(shí)候有個(gè)問題一直沒法解決,請(qǐng)大家指點(diǎn)下 Scannaer的那個(gè)。讀取字符串老是讀取到 輸入法里的拼音 。而讀取非拼音的字符就正常,寫漢字時(shí)他的光標(biāo)不會(huì)自動(dòng)跳下去。很是費(fèi)解。

package?Puke1;

//絕世高手的對(duì)決
import?java.util.ArrayList;
import?java.util.Collections;
import?java.util.List;
import?java.util.Scanner;

public?class?Test?{
????public?List<Puke>?cpuke;?//?全牌的集合
????public?List<player>?players;?//?玩家集合

????public?Test()?{
????????this.cpuke?=?new?ArrayList<Puke>();
????????this.players?=?new?ArrayList<player>();
????}

????public?static?void?main(String[]?args)?{?????
????????Test?t?=?new?Test();
????????t.cpoke();?//?創(chuàng)建撲克
????????t.xpuke();?//?洗牌
????????t.cJwan();?//?創(chuàng)建玩家
????????t.fPai();?//?發(fā)牌和比較牌

????}

????//?創(chuàng)建牌
????public?void?cpoke()?{
????????System.out.println("----------創(chuàng)建撲克中---------");
????????for?(int?i?=?0;?i?<?4;?i++)?{
????????????for?(int?m?=?0;?m?<?14;?m++)?{
????????????????Puke?p?=?new?Puke(i,?m?+?1);
????????????????cpuke.add(p);
????????????}
????????}
????????for?(int?i?=?0;?i?<?cpuke.size();?i++)?{

????????????System.out.print("["?+?cpuke.get(i).huase?+?cpuke.get(i).num?+?"]");
????????}
????????System.out.println("\n"?+?"----------創(chuàng)建完畢----------");
????}

????//?洗牌
????public?void?xpuke()?{
????????System.out.println("----------開始洗牌----------");
????????Collections.shuffle(cpuke);
????????for?(int?i?=?0;?i?<?cpuke.size();?i++)?{
????????????//?System.out.print("["?+?cpuke.get(i).huase?+?cpuke.get(i).num?+
????????????//?"]");?//洗牌后的牌打印
????????}
????????System.out.println("\n");
????}

????//?創(chuàng)建玩家
????public?void?cJwan()?{
????????while?(true)?{
????????????try?{
????????????????System.out.println("請(qǐng)輸入第一位玩家的ID:");
????????????????Scanner?input?=?new?Scanner(System.in);
????????????????int?t1?=?input.nextInt();
????????????????System.out.println("請(qǐng)輸入第一位玩家的姓名:");
????????????????String?t2?=?input.next();
????????????????player?p?=?new?player(t1,?t2);
????????????????players.add(p);
????????????????break;
????????????}?catch?(Exception?e)?{
????????????????System.out.println("請(qǐng)輸入整形數(shù)據(jù)類型的ID:");
????????????}
????????}

????????while?(true)?{
????????????try?{
????????????????Scanner?input?=?new?Scanner(System.in);
????????????????System.out.println("請(qǐng)輸入第二位玩家的ID:");
????????????????int?t1?=?input.nextInt();
????????????????System.out.println("請(qǐng)輸入第二位玩家的姓名:");
????????????????String?t2?=?input.next();
????????????????player?p?=?new?player(t1,?t2);
????????????????players.add(p);
????????????????break;
????????????}?catch?(Exception?e)?{
????????????????System.out.println("請(qǐng)輸入整形數(shù)據(jù)類型的ID:");
????????????}
????????}

????????System.out.println("歡迎玩家:"?+?players.get(0).name);
????????System.out.println("歡迎玩家:"?+?players.get(1).name);
????}

????//?發(fā)牌且比較
????public?void?fPai()?{
????????players.get(0).sPai.add(cpuke.get(0));
????????players.get(1).sPai.add(cpuke.get(1));
????????players.get(0).sPai.add(cpuke.get(2));
????????players.get(1).sPai.add(cpuke.get(3));
????????System.out.println("發(fā)牌結(jié)束~");
????????System.out.println("開始游戲:");
????????int?a?=?0;
????????int?b?=?0;
????????if?(players.get(0).sPai.get(0).numy?>?players.get(0).sPai.get(1).numy)?{
????????????System.out.println("玩家:"?+?players.get(0).name?+?"最大的手牌為;"
????????????????????+?players.get(0).sPai.get(0).huase
????????????????????+?players.get(0).sPai.get(0).num);
????????}?else?{
????????????System.out.println("玩家:"?+?players.get(0).name?+?"最大的手牌為;"
????????????????????+?players.get(0).sPai.get(1).huase
????????????????????+?players.get(0).sPai.get(1).num);
????????????a?=?1;
????????}
????????if?(players.get(1).sPai.get(0).numy?>?players.get(1).sPai.get(1).numy)?{
????????????System.out.println("玩家:"?+?players.get(1).name?+?"最大的手牌為;"
????????????????????+?players.get(1).sPai.get(0).huase
????????????????????+?players.get(1).sPai.get(0).num);
????????}?else?{
????????????System.out.println("玩家:"?+?players.get(1).name?+?"最大的手牌為;"
????????????????????+?players.get(1).sPai.get(1).huase
????????????????????+?players.get(1).sPai.get(1).num);
????????????b?=?1;
????????}
????????if?(players.get(0).sPai.get(a).numy?>?players.get(1).sPai.get(b).numy)?{
????????????System.out.println(players.get(0).name?+?"獲勝,你可真牛b啊");
????????}?else?if?(players.get(0).sPai.get(a).numy?==?players.get(1).sPai
????????????????.get(b).numy)?{
????????????if?(players.get(0).sPai.get(a).huaseint?>?players.get(1).sPai
????????????????????.get(b).huaseint)?{
????????????????System.out.println(players.get(0).name?+?"獲勝,你可真牛b啊");
????????????}
????????}?else?{
????????????System.out.println(players.get(1).name?+?"獲勝,你可真牛b啊");
????????}
????????System.out.println("玩家各自的手牌:");????????????????????????????????????????????
????????System.out.print(players.get(0).name?+?":"
????????????????+?players.get(0).sPai.get(0).huase
????????????????+?players.get(0).sPai.get(0).num);
????????System.out.println(players.get(0).sPai.get(1).huase
????????????????+?players.get(0).sPai.get(1).num);
????????System.out.print(players.get(1).name?+?"."
????????????????+?players.get(1).sPai.get(0).huase
????????????????+?players.get(1).sPai.get(0).num);
????????System.out.println(players.get(1).sPai.get(1).huase
????????????????+?players.get(1).sPai.get(1).num);
????}
}
package?Puke1;
//撲克類
public?class?Puke?{
????public?String?huase;???
????public?String?num;????????
????public?int?numy;
????public?int?huaseint;
????public?Puke(int?a,int?b){
????????this.numy=b;
????????this.huaseint=huaseint;
????????switch(a){
????????case?0:this.huase="紅桃";
????????break;
????????case?1:this.huase="方片";
????????break;
????????case?2:this.huase="梅花";
????????break;
????????case?3:this.huase="黑桃";
????????break;
????????}
????????switch(b){
????????case?11:this.num="J";
????????break;
????????case?12:this.num="Q";
????????break;
????????case?13:this.num="K";
????????break;
????????case?14:this.num="A";
????????break;
????????default:
????????????this.num=Integer.toString(b);
????????
????????}
????
????}
}
package?Puke1;
//玩家類
import?java.util.ArrayList;
import?java.util.List;

public?class?player?{
????public?int?id;
????public?String?name;
????public?List?<Puke>sPai;
????public?player(int?id,String?name){
????????this.id=id;
????????this.name=name;
????????this.sPai=new?ArrayList?<Puke>();
????}

}

比較方法做的不是很好。求更好的方法。

正在回答

我之前也做了,下面是我做的源代碼,可以參考參考

package?com;

public?class?Puke?{

	private?String?color;
	private?String?number;
	private?int?size;
	private?int?colorSize;
	
	public?Puke(){
		
	}
	public?Puke(String?color,String?number){
		this.color?=?color;
		this.number?=?number;
	}
	
	public?int?getSize(){
		if(number=="J"){
			size?=?11;
		}
		else?if(number=="Q"){
			size?=?12;
		}
		else?if(number=="K"){
			size?=?13;
		}
		else?if(number=="A"){
			size?=?14;
		}
		else{
			size?=?Integer.parseInt(number);
		}
		return?size;
	}
	public?int?getColorSize(){
		if(color=="黑桃"){
			colorSize?=?4;
		}
		else?if(color=="紅桃"){
			colorSize?=?3;
		}
		else?if(color=="梅花"){
			colorSize?=?2;
		}
		else?if(color=="方塊"){
			colorSize?=?1;
		}
		return?colorSize;
	}
	public?String?getColor()?{
		return?color;
	}
	public?void?setColor(String?color)?{
		this.color?=?color;
	}
	public?String?getNumber()?{
		return?number;
	}
	public?void?setNumber(String?number)?{
		this.number?=?number;
	}
	public?String?toString(){
		return?color+number;
	}
	
}
package?com;

import?java.util.ArrayList;

public?class?Player?{

	private?int?id;
	private?String?name;
	private?ArrayList<Puke>?handsPuke;
	private?Puke?maxPuke;
	
	public?Player(){
	}
	public?Player(int?id,String?name){
		handsPuke?=?new?ArrayList<Puke>();
		this.id?=?id;
		this.name?=?name;
	}
	
	public?int?getId()?{
		return?id;
	}
	public?void?setId(int?id)?{
		this.id?=?id;
	}
	public?String?getName()?{
		return?name;
	}
	public?void?setName(String?name)?{
		this.name?=?name;
	}
	public?ArrayList<Puke>?getHandsPuke()?{
		return?handsPuke;
	}
	public?void?setHandsPuke(Puke?puke)?{
		this.handsPuke.add(puke);
	}
	public?Puke?getMaxPuke()?{		
		maxPuke?=?new?Puke("方塊","2");
		for(int?i?=?0;i<handsPuke.size();i++){
			if(handsPuke.get(i).getSize()>maxPuke.getSize()){
				maxPuke?=?handsPuke.get(i);
			}
		}
		return?maxPuke;
	}
	public?void?setMaxPuke(Puke?maxPuke)?{
		this.maxPuke?=?maxPuke;
	}
}
package?com;

import?java.util.ArrayList;
import?java.util.Random;
import?java.util.Scanner;

public?class?util?{
	private?String[]?color={"黑桃","紅桃","梅花","方塊"};
	private?String[]?number={"2","3","4","5","6","7","8","9","10","J","Q","K","A"};
	
	private?ArrayList<Puke>?pukes;
	private?ArrayList<Player>?players;
	
	//創(chuàng)建一副撲克牌
	public?void?createPuke(){
		System.out.println("-------------------創(chuàng)建一副撲克牌---------------------");
		pukes?=?new?ArrayList<Puke>();
		for(int?i?=?0;i<color.length;i++){
			for(int?j=0;j<number.length;j++){
				Puke?puke?=?new?Puke(color[i],number[j]);
				pukes.add(puke);
			}
			
		}
		for(Puke?puke:pukes){
			System.out.print(puke.toString()+"?");
		}
		System.out.println();
		System.out.println("----------------------創(chuàng)建完畢-----------------------");
	}
	public?void?createPlayer(){
		players?=?new?ArrayList<Player>();
		System.out.println("---------------------創(chuàng)建玩家------------------------");
		Scanner?s?=?new?Scanner(System.in);
		int?id=0;
		String?name="";
		for(int?i?=?0;i<2;i++){
			System.out.println("請(qǐng)輸入玩家"+(i+1)+"的id和姓名:");
			System.out.println("請(qǐng)輸入id");
			try{	
				id?=?s.nextInt();
				System.out.println("請(qǐng)輸入姓名");
			}catch(Exception?e){
				System.out.println("請(qǐng)輸入整數(shù)類型的id");
				this.createPlayer();
			}
			name=s.next();
			players.add(new?Player(id,name));
		}
		for?(Player?player:players)?{
????????????System.out.println("-----歡迎玩家:"+player.getName());
????????}
	}
	public?void?washPuke(){
		?System.out.println("---------開始洗牌------------");
	?????for?(int?i?=?0;?i?<?pukes.size();?i++)?{
	??????????Random?random?=?new?Random();
	??????????int?j?=?random.nextInt(pukes.size());
	??????????Puke?temp?=?pukes.get(i);????//用一個(gè)變量保存?i位置的一張撲克
	??????????pukes.set(i,?pukes.get(j));??//用j位置(隨機(jī)長(zhǎng)生)的撲克替換i位置的撲克
	??????????pukes.set(j,?temp);??//j位置的撲克就替換成原來i位置的撲克
	????}
	???System.out.println("---------洗牌結(jié)束!-----------");
	}
	public?void?getPuke(){
		System.out.println("---------------開始發(fā)牌--------------------");
		int?n=0;
		for(int?i?=?0;i<2;i++){
			for(Player?player:players){
				player.setHandsPuke(pukes.get(n++));
				System.out.println("-----玩家"+player.getName()+"拿牌-----");
			}
		}
		System.out.println("---------------發(fā)牌結(jié)束---------------------");
	}
	
	public?void?startGame(){
		System.out.println("---------------開始游戲---------------------");
		for(Player?player:players){
			System.out.println("---玩家"+player.getName()+"最大的手牌為:"+player.getMaxPuke().toString());
		}
		Player?winPlayer?=?comparePlayer(players.get(0),players.get(1));
		if(winPlayer?!=?null){
			System.out.println("-----玩家"+winPlayer.getName()+"獲勝---------");
		}
		else{
			System.out.println("平手");
		}
		for(Player?player:players){
			System.out.print("-----玩家"+player.getName()+"的手牌為:");
			for(Puke?puke:player.getHandsPuke()){
				System.out.print(puke.toString()+"?");
			}
			System.out.println();
		}
	}
	/*
	public?Puke?getPlayerMaxPuke(Player?player){
		Puke?maxPuke?=?new?Puke("方塊","2");
		ArrayList<Puke>?handsPuke?=?player.getHandsPuke();
		for(int?i?=?0;i<handsPuke.size();i++){
			if(handsPuke.get(i).getSize()>maxPuke.getSize()){
				maxPuke?=?handsPuke.get(i);
			}
		}
		return?maxPuke;
	}*/
	public?Player?comparePlayer(Player?player1,Player?player2){
		if(player1.getMaxPuke().getSize()?>?player2.getMaxPuke().getSize()){
			return?player1;
		}
		else?if(player1.getMaxPuke().getSize()?<?player2.getMaxPuke().getSize()){
			return?player2;
		}
		else{
			if(player1.getMaxPuke().getColorSize()?>?player2.getMaxPuke().getColorSize()){
				return?player1;
			}
			else?if(player1.getMaxPuke().getColorSize()?<?player2.getMaxPuke().getColorSize()){
				return?player2;
			}else{
				return?null;
			}
		}
			
	}
}
package?com;

public?class?game?{

	public?static?void?main(String[]?args)?{
		util?pukeGame?=?new?util();
		pukeGame.createPuke();
		pukeGame.createPlayer();
		pukeGame.washPuke();
		pukeGame.getPuke();
		pukeGame.startGame();
	}

}


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

持恒 提問者

謝謝分享,細(xì)細(xì)看過了。循環(huán)洗牌的想法很好啊,沒Collections.shuffle()我還真想不到這辦法。 不過我還是那個(gè)疑問Scanner實(shí)例next()老是讀取到拼音。就是打漢字的時(shí)候
2015-06-04 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

寫了一下午,代碼上傳了,請(qǐng)大家指點(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)