當前位置:首頁 » 編程語言 » 猜拳游戲java

猜拳游戲java

發布時間: 2023-01-24 23:27:54

1. java猜拳游戲程序設計怎麼做啊

importjava.util.Random;

classDianNao{
publicStringchuQuan(){
Randomrand=newRandom();
inti=rand.nextInt(3);
Stringstr="";
if(i==0){
str="石頭";
}
if(i==1){
str="剪刀";
}
if(i==2){
str="布";
}
returnstr;

}
}

classCaiPan{
publicStringcaiJue(Stringstr1,Stringstr2){
Stringstr="輸";
if(str1.equals("石頭")&&str2.equals("剪刀")){
str="贏";
}
if(str1.equals("石頭")&&str2.equals("布")){
str="輸";
}
if(str1.equals("石頭")&&str2.equals("石頭")){
str="平";
}
if(str1.equals("剪刀")&&str2.equals("石頭")){
str="輸";
}
if(str1.equals("剪刀")&&str2.equals("布")){
str="贏";
}
if(str1.equals("剪刀")&&str2.equals("剪刀")){
str="平";
}
if(str1.equals("布")&&str2.equals("石頭")){
str="贏";
}
if(str1.equals("布")&&str2.equals("剪刀")){
str="輸";
}
if(str1.equals("布")&&str2.equals("布")){
str="平";
}
returnstr;
}
}

publicclassShiTouJianBu{

/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
CaiPancp=newCaiPan();
DianNaodn1=newDianNao();
DianNaodn2=newDianNao();
Stringstr1=dn1.chuQuan();
Stringstr2=dn2.chuQuan();
Stringresult=cp.caiJue(str1,str2);
System.out.println(str1);
System.out.println(str2);
System.out.println(result);
}

}

就幫你到這吧

2. 用java如何編寫一個猜拳游戲

我之前寫了個猜拳游戲的源代碼,不過沒你想的這么精彩。你才給5分就給你你自己修改了,應該很簡單的。要多給點分我可以幫你修改。
import java.util.Scanner;
import java.util.Random;
public class caiquan
{
final int jian=0;
final int shitou=1;
final int bu=2;

public static void main(String[] args)
{
String yn="y";
while (yn.equals("y"))
{
Scanner scanner = new Scanner(System.in);
System.out.println("歡迎玩猜拳游戲。請輸入0,1,2:0表示剪刀,1表示石頭,2表示布");
int a = scanner.nextInt();

Random rd = new Random();
int b = rd.nextInt(3);

switch (b)
{
case 0:
{
System.out.println("系統出的是剪刀");
switch(a)
{
case 0:System.out.println("平");break;
case 1:System.out.println("贏");break;
case 2:System.out.println("輸");break;
}
}
break;
case 1:
{
System.out.println("系統出的是石頭");
switch(a)
{
case 0:System.out.println("輸");break;
case 1:System.out.println("平");break;
case 2:System.out.println("贏");break;
}
}
break;
case 2:
{
System.out.println("系統出的是布");
switch(a)
{
case 0:System.out.println("贏");break;
case 1:System.out.println("輸");break;
case 2:System.out.println("平");break;
}
}
}
Scanner ynn = new Scanner(System.in);
System.out.println("是否繼續?是請輸入y,否則輸入n。");
yn=ynn.next();
}
}
}

3. Java使用循環,實現猜拳游戲統計多少局及勝率

為了讓游戲有參與感,並體現java面對對象的思想,我先創建一個Player選手類,包含選手的名字playerName還有出拳方法guess()。出拳時採用隨機獲取0、1和2的方式分別代表石頭、剪刀和布,代碼如下:

public class Player {
private String playerName;

public Player(String playerName) {
this.playerName = playerName;
}

public String getPlayerName() {
return playerName;
}

//出拳方法 0-石頭 1-剪刀 2-布
public int guess() {
//隨機獲取0、1、2
int num = new Random().nextInt(3);
if (num == 0) {
System.out.print("選手" + this.playerName + "出的是石頭 ");
} else if (num == 1) {
System.out.print("選手" + this.playerName + "出的是剪刀 ");
} else if (num == 2) {
System.out.print("選手" + this.playerName + "出的是布 ");
}
return num;
}

}

我這里就只能統計當前游戲的數據了,如果你想統計多局游戲總的勝率信息,那麼需要將每一局的比賽結果寫到txt文件里,最終根據txt文件內容統計即可。

4. 用java編寫猜拳游戲 最後統計玩了多少次 自己和電腦積分是多少。最後是誰獲勝

publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub

Scannerscanner=newScanner(System.in);
intsman=0;
intscomputer=0;
intsping=0;
inti=1;
for(;i>0;i++){
System.out.println("第"+i+"次猜拳,1:剪刀;2:石頭;3:布;4:不玩了;");
//玩家的操作
intgame=scanner.nextInt();
if(game==4){
break;
}
if(game>4||game<1){
System.out.println("輸入不合法;");
try{
Thread.sleep(1500);
}catch(InterruptedExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
i--;
continue;
}
//生成電腦結果
Randomrandom=newRandom();
intauto=random.nextInt(3)+1;

if((game==1&&auto==4)||(game==2&&auto==1)||(game==3&&auto==2)){//判斷玩家勝的條件
sman++;
System.out.println("玩家:"+result(game)+";電腦:"+result(auto)+";玩家勝");
}elseif((game==1&&auto==2)||(game==2&&auto==3)||(game==3&&auto==1)){//判斷電腦省的條件
scomputer++;
System.out.println("玩家:"+result(game)+";電腦:"+result(auto)+";電腦勝");
}else{
sping++;
System.out.println("玩家:"+result(game)+";電腦:"+result(auto)+";平");
}

}
Stringresult="";
if(sman>scomputer){
result="勝";
}elseif(sman==scomputer){
result="平";
}else{
result="負";
}
System.out.println("共游戲"+(i-1)+"局游戲,玩家勝:"+sman+";電腦勝:"+scomputer+";平:"+sping+";玩家"+result);
}

publicstaticStringresult(intval){
Stringvalue="";
if(val==1){
value="剪刀";
}elseif(val==2){
value="石頭";
}elseif(val==3){
value="布";
}else{
value="未知";
}
returnvalue;
}

5. java代碼猜拳游戲相關代碼請教

comp是電腦產生的隨機數字(電腦出的拳),people 是人出的拳。 因為剪刀石頭布只有 1 2 3

。如果電腦的數字比的你剛好大1,就是它比你的大。 如2>1,3>2對應就是(石頭大於剪刀,布大於石頭)。 但也有可能是剪刀大於布 。 那麼剪刀的位子是1 ,布的位子是3. 所以當電腦數字減你的數字等於2時 就是(電腦出的布 ,你出的石頭這樣的情況了)。
所以是if((comp-people)==-1||(comp-people)==2) 這兩者結合就是你贏的時候

6. 求一個java猜拳游戲程序

packagetest;
importjava.util.Random;
importjava.util.Scanner;
/**
*猜拳游戲思路
*1、定義輸入函數
*2、提示用戶輸入猜拳數值
*3、定義隨機一個數作為電腦數值
*4、判斷[用戶輸入數值]與[電腦隨機數值]
*5、能夠相等就是打平,不能相等就利用&&、||邏輯符判斷輸贏
*6、設定數值1-石頭2-剪刀3-布
*/
publicclassCaiQuanYouXi{
publicstaticvoidmain(String[]args){
Scannerin=newScanner(System.in);//定義輸入函數in,Scanner包功能,輸入數值用的
System.out.println("--------------猜拳游戲---------------");
System.out.println("請輸入一個數值:1、石頭2、剪刀3、布");//提示輸入數值
System.out.println("");//空行
intx=in.nextInt();//讓用戶輸入X的數值
Randomon=newRandom();//定義電腦的隨機數值的函數on
inty=on.nextInt(3)+1;//定義y隨機函數數值范圍(1--3)
if(x>=4||x==0){//判斷用戶是否輸入非1--3范圍
System.out.println("親,請正確輸入:1、石頭2、剪刀3、布。你輸入了:"+x);
}else{
/*下面是判斷用戶輸入x的數值嵌套if*/
if(x==y){
if(x==1){//判斷打平的情況
System.out.println("你:石頭------電腦:石頭PK:很幸運打平手");
}elseif(x==2){
System.out.println("你:剪刀------電腦:剪刀PK:很幸運打平手");
}else{
System.out.println("你:布------電腦:布PK:很幸運打平手");
}
}elseif(x==1&&y==2||x==2&&y==3||x==3&&y==1){//開始判斷贏的情況
if(x==1&&y==2){
System.out.println("你:石頭------電腦:剪刀PK:恭喜您,贏了!");
}elseif(x==2&&y==3){
System.out.println("你:剪刀------電腦:布PK:恭喜您,贏了!");
}else{
System.out.println("你:布------電腦:石頭PK:恭喜您,贏了!");
}
}else{//開始判斷輸的情況
if(x==1&&y==3){
System.out.println("你:石頭------電腦:布PK:很遺憾,輸了!");
}elseif(x==2&&y==1){
System.out.println("你:剪刀------電腦:石頭PK:很遺憾,輸了!");
}else{
System.out.println("你:布------電腦:剪刀PK:很遺憾,輸了!");
}
}
}
}
}

運行後的效果展示:

--------------猜拳游戲---------------
請輸入一個數值:1、石頭 2、剪刀 3、布
1
你:石頭------電腦:布 PK:很遺憾,輸了!


--------------猜拳游戲---------------
請輸入一個數值:1、石頭 2、剪刀 3、布
4
親,請正確輸入:1、石頭 2、剪刀 3、布。你輸入了:4

7. java猜拳游戲分四個類

分太低,這是要很多個類,難得寫

8. java猜拳游戲 (3局2勝)

packageDemo;
importjava.util.Random;
importjava.util.Scanner;
publicclassDemo12{
publicstaticvoidmain(String[]args){
String[]str={"石頭","剪刀","布"};
Randomram=newRandom();
inty,n,i;
while(true){
System.out.println("菜單: 1、開始猜拳 9、退出");
Scannerscan=newScanner(System.in);
System.out.print("請選擇:");
Strings=scan.nextLine();
if("1".equals(s.trim())){
y=0;
n=0;
i=0;
while(true){
try{
System.out.println("請出拳:1、石頭2、剪刀3、布");
ints1=Integer.parseInt(scan.nextLine());
if(s1>0&&s1<4){
System.out.println("你出:"+str[s1-1]);
ints2=ram.nextInt(3);
System.out.println("我出:"+str[s2]);
if(s1==(s2+1)){
System.out.println("這次是平局");
}elseif((s1==1&&s2==1)
||(s1==2&&s2==2)
||(s1==3&&s2==0)){
System.out.println("這次你贏了!");
y++;
}elseif((s1==1&&s2==2)
||(s1==2&&s2==0)
||(s1==3&&s2==1)){
System.out.println("這次你輸了!");
n++;
}
if(i==2){
if(y>n){
System.out.println("你贏了"+y+":"+n);
}elseif(y<n){
System.out.println("你輸了"+y+":"+n);
}else{
System.out.println("平局"+y+":"+n);
}
break;
}
i++;
}else{
System.out.println("輸入有誤!");
}
}catch(Exceptionex){
System.out.println("輸入有誤!");
}
}
}elseif("9".equals(s.trim())){
System.out.println("退出成功");
return;
}else{
System.out.println("指令錯誤~");
}
}
}
}




菜單:

1、開始猜拳

9、退出

請選擇:2

指令錯誤~

菜單:

1、開始猜拳

9、退出

請選擇:1

請出拳:1、石頭 2、剪刀 3、布

2

你 出:剪刀

我 出:布

這次你贏了!

請出拳:1、石頭 2、剪刀 3、布

4

輸入有誤!

請出拳:1、石頭 2、剪刀 3、布

3

你 出:布

我 出:布

這次是平局

請出拳:1、石頭 2、剪刀 3、布

1

你 出:石頭

我 出:石頭

這次是平局

你贏了 1:0

菜單:

1、開始猜拳

9、退出

請選擇:9

退出成功

9. java人機猜拳游戲initial方法

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Random; public class FingerGuessing { private String[] op = new String[] { "布", "剪刀", "石頭" }; Random r = new Random(); private int wj = 0; private int dn = 0; private int count = 0; private int go() { int k = r.nextInt(3); System.out.println("電腦:" + op[k]); return k; } private void compare(int i) { count++; System.out.println("玩家:" + op[i - 1]); int k = go(); if ( i - 1 == k) { System.out.println("打平"); } else if ( i - 1 - k == 1 || i-1-k == -2) { System.out.println("玩家獲勝"); wj++; } else { System.out.println("電腦獲勝"); dn++; } } private void info() { System.out.println("共" + count + "盤"); System.out.println("玩家獲勝" + wj + "盤"); System.out.println("電腦獲勝" + dn + "盤"); System.out.println("打平" + (count-wj-dn) + "盤"); } public void start() { String xz = ""; BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); do { System.out.println("\n請選擇:\n1.布\n2.剪刀\n3.石頭\n結束請輸入exit"); try { xz = br.readLine(); if (xz.equalsIgnoreCase("exit")) { info(); continue; } if (!xz.equals("1") && !xz.equals("2") && !xz.equals("3")) { System.out.println("選擇錯誤,請重新選擇"); continue; } compare(Integer.parseInt(xz)); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } while (!xz.equals("exit")); } /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub new FingerGuessing().start(); } }

10. 猜拳游戲java能輸出遊戲時間

Java實現猜拳游戲的核心在於電腦隨機數的生成,Java中的隨機數生成方法是:
首先引入包   import java.util.*;  然後   int r=new Random().nextInt(3);  (nextInt中的數字三代表隨機數生成的個數,從零開始)
所以在猜拳的輸入中需要有0、1、2三個數字代替,如果要輸入漢字,則用if進行相應判斷即可。

在實現的游戲中實現①猜拳;②記錄勝負;③玩家決定游戲局數;④輸出獲勝、失敗及平局;⑤統計總共的勝負結果(根據獲勝次數判斷)

①猜拳基礎功能:該部分代碼可以放到一個方法中,減少主函數代碼量。

電腦出拳即  int r=new Random().nextInt(3);  注意:該部分一定要寫在for循環內部,否則無法實現每次不同的隨機數。

通過if判斷雙方出拳是否相等   if(a==0&&r==0)  else if(a==0&&r==1)  else if(a==0&&r==2)   即可實現猜拳,if內直接輸出相關語句即可

②記錄勝負:  定義猜拳方法為int ,通過返回值記錄相關比賽的勝負情況  ,可以用0--失敗;1--獲勝;2--平局 進行記錄,在主函數中對相應拋出的數字記錄即可

if(a==0&&r==0){
System.out.println("The computer comes out with cloth,it was a draw. ");
return 2;
}

h=comp.compare(a,r); if (h==1) j++;
登錄後復制
③玩家決定局數: 定義一個數,在循環中不大於該數即可

④輸出獲勝、失敗及平局: j、k即勝利和失敗,平局數即n-j-k。

⑤統計結果,直接用if比較i、j的數字結果即可。

主函數部分:

package SS2_5;
import java.util.*;

public class Main {
public static void main(String args[]){
Scanner scanner=new Scanner(System.in);
Compare comp=new Compare();
int h=0,j=0,k=0;
System.out.println("rules:0--cloth;1--stone;2--scissors.\nU can choose how many times you want to play:");
int n=scanner.nextInt();
for(int i=1;i<=n;i++){
System.out.print("It's the "+i+" round,your turn:");
int a=scanner.nextInt();
int r=new Random().nextInt(3);
switch (a){
case 0:
h=comp.compare(a,r);
break;
case 1:
h=comp.compare(a,r);
break;
case 2:
h=comp.compare(a,r);
break;
default:
System.out.println("Wrong number!");
break;
}
if (h==1)
j++;
else if(h==0)
k++;

}
System.out.println("The total times you won are "+j+",The draw times are "+(n-j-k)+".");
if(j>k)
System.out.println("You are the final winner");
else if(k>j)
System.out.println("The computer is the winner.");
if(j==k)
System.out.println("The final result is draw");
}
}
登錄後復制

compare方法部分

package SS2_5;

public class Compare {
public int compare(int a,int r){
int counter=0;
if(a==0&&r==0){
System.out.println("The computer comes out with cloth,it was a draw. ");
return 2;
}
else if(a==0&&r==1){
System.out.println("The computer comes out with stone, you won. ");
return 1;
}
else if(a==0&&r==2){
System.out.println("The computer comes out with scissor,you lost. ");
return 0;
}
else if(a==1&&r==0){
System.out.println("The computer comes out with cloth,you lost. ");
return 0;
}
else if(a==1&&r==1){
System.out.println("The computer comes out with stone,it was a draw. ");
return 2;
}
else if(a==1&&r==2){
System.out.println("The computer comes out with scissors,you won. ");
return 1;
}
else if(a==2&&r==0){
System.out.println("The computer comes out with cloth,you won. ");
return 1;
}
else if(a==2&&r==1){
System.out.println("The computer comes out with stone,you lost. ");
return 0;
}
else if(a==2&&r==2){
System.out.println("The computer comes out with scissors,it was a draw. ");
return 2;
}
else
return 0;
}
}
登錄後復制

java
704拖拉機
精選推薦
廣告

java寫簡單的猜拳游戲
2下載·0評論
2016年7月27日
用Java編寫的猜拳小游戲
2029閱讀·0評論·0點贊
2021年3月7日
Java猜拳游戲和Random的應用
21閱讀·0評論·0點贊
2022年10月24日
java實現完整版猜拳小游戲
25下載·0評論
2018年11月22日
python實現功能猜拳
1137閱讀·2評論·3點贊
2022年7月14日
java猜拳switch計分制_java----猜拳(10局分勝負)
117閱讀·0評論·1點贊
2021年3月15日
二手拖拉機交易市場,你還在高價買嗎?

精選推薦
廣告
利用Java編寫簡單的猜拳游戲
911閱讀·0評論·1點贊
2022年9月8日
Java簡單實現猜拳游戲
1.1W閱讀·1評論·2點贊
2022年1月23日
java猜拳游戲代碼_Java實現簡單猜拳游戲
4496閱讀·0評論·0點贊
2021年3月1日
用java來寫一個簡單的猜拳小游戲
890閱讀·1評論·1點贊
2022年7月26日
java實現猜拳游戲
3180閱讀·2評論·1點贊
2022年5月4日
JAVA編寫猜拳游戲
3037閱讀·3評論·3點贊
2021年3月16日
[Java教程]17.實戰,趣味猜拳小游戲
8040閱讀·2評論·3點贊
2020年6月24日
怎麼用java實現人機猜拳?
1959閱讀·6評論·9點贊
2021年7月22日
Java Random經典例子【猜拳游戲】
4318閱讀·0評論·0點贊
2014年3月22日
java的人機猜拳代碼_Java實現人機猜拳游戲
702閱讀·0評論·2點贊
2021年3月12日
Java基礎練習之猜拳游戲
363閱讀·1評論·1點贊
2021年8月19日
用java寫猜拳小游戲
1096閱讀·0評論·1點贊
2021年9月1日
Java猜拳小游戲
97閱讀·0評論·0點贊
2022年8月23日
java猜拳小游戲
500閱讀·1評論·0點贊
2022年7月14日

熱點內容
幻境7腳本 發布:2025-07-20 22:51:25 瀏覽:436
怎麼配置vs2015的環境變數 發布:2025-07-20 22:48:49 瀏覽:57
為什麼開鎖人不建議安裝密碼鎖 發布:2025-07-20 22:41:56 瀏覽:254
phpsocketlisten 發布:2025-07-20 22:39:07 瀏覽:429
絕地求生未來之役要下什麼伺服器 發布:2025-07-20 22:34:26 瀏覽:67
linux對比工具 發布:2025-07-20 22:31:45 瀏覽:750
音樂緩存在什麼文件夾 發布:2025-07-20 22:31:40 瀏覽:818
ftp伺服器怎麼清理 發布:2025-07-20 22:08:26 瀏覽:4
點膠緩存機 發布:2025-07-20 22:06:45 瀏覽:738
手機存儲已損壞 發布:2025-07-20 21:51:00 瀏覽:54