?? usergame.java
字號:
/**
*
*/
package zzjun.business;
import java.util.Iterator;
import java.util.Random;
import java.util.ArrayList;
import zzjun.data.GameData;
/**
* @author Administrator
*
*/
public class UserGame implements IUserGame {
//創建用戶數據
public GameData createGameData() {
GameData GD=new GameData();
initGameData(GD);
return GD;
}
//單局比較
public String dataCompare(GameData GD, String guessdata) {
String result=new String();
String rightdata = null;
int data=new Random().nextInt(3);
if(data==0) rightdata="石頭";
else if(data==1) rightdata="剪刀";
else if(data==2) rightdata="布";
if((rightdata=="石頭"&&guessdata=="石頭")||(rightdata=="剪刀"&&guessdata=="剪刀")
||(rightdata=="布"&&guessdata=="布")){
result="平手";
GD.getGameDate().add(rightdata);
GD.getGameDate().add(guessdata);
GD.getGameDate().add("平");
}
else if((rightdata=="石頭"&&guessdata=="剪刀")||(rightdata=="剪刀"&&guessdata=="布")
||(rightdata=="布"&&guessdata=="石頭")){
result="輸"; GD.lost++;
GD.getGameDate().add(rightdata);
GD.getGameDate().add(guessdata);
GD.getGameDate().add("輸");
}
else if((rightdata=="石頭"&&guessdata=="布")||(rightdata=="剪刀"&&guessdata=="石頭")
||(rightdata=="布"&&guessdata=="剪刀")){
result="贏"; GD.win++;
GD.getGameDate().add(rightdata);
GD.getGameDate().add(guessdata);
GD.getGameDate().add("贏");
}
return result;
}
// 一輪完后的比較
public void lastCompare(GameData GD){
int win=GD.getWin(); int lost=GD.getLost();
if(win>=2||(win==1&&lost==0)){ GD.setResult("贏"); GD.allwin++;}
else if(lost>=2||(lost==1&&win==0)){ GD.setResult("輸"); GD.alllost++; }
else {GD.setResult("平"); GD.alldeuce++;}
}
//初始化用戶數據
public void initGameData(GameData GD) {
if(GD.getGameDate()!=null){
GD.getGameDate().clear();
GD.setDatatime(0);
GD.setLost(0);
GD.setWin(0);
}
else {
GD.setGameDate(new ArrayList());
GD.setDatatime(0);
GD.setLost(0);
GD.setWin(0);
}
}
//輸出一輪后的最后結果
public String printoutstoryData(GameData GD) {
StringBuffer sb=new StringBuffer();
sb.append("一輪完了 ");
sb.append("你以 "+GD.getWin()+"勝"+GD.getLost()+"負"+(3-(GD.getLost()+GD.getWin()))
+"平 "+"<font color=\"#000fff\"><b><big>"+GD.getResult()+"了"+"</big></b></font>"+"\n\n");
sb.append(Printoutdata(GD));
return sb.toString();
}
//輸出一輪中的過程數據
public String Printoutdata(GameData GD){
StringBuffer sb=new StringBuffer();
sb.append("電腦\t").append("你"+"\t結果"+"\n");
int j=0; // 做為標志得以格式化輸出
for(int i=0; i<GD.getGameDate().size(); i++){
sb.append(GD.getGameDate().get(i)+"\t"); j++;
if(j==3){sb.append("\n"); j=0;}
}
return sb.toString();
}
public String getAllResult(GameData GD){
StringBuffer sb=new StringBuffer();
sb.append("勝:"+GD.getAllwin()+" 輸:"+GD.getAlllost()+" 平:"+GD.getAlldeuce());
return sb.toString();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -