欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java人機猜拳實現(xiàn)的思路及方法實例

 更新時間:2020年12月14日 11:07:38   作者:月菱歌  
這篇文章主要給大家介紹了關于Java人機猜拳實現(xiàn)的思路及方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

創(chuàng)建四個類:

機器人類

玩家類

游戲類

運行類

一、機器人類:

1.首先創(chuàng)建兩個成員變量,分別作為機器人的名字與積分:

String name;
int jifen;

2.然后創(chuàng)建方法“pcname”用于定義機器人的名字:

寫個switch循環(huán)來判斷如果你按1234的話誰來與你對戰(zhàn)

3.然后再創(chuàng)建一個方法“chuquan”來定義機器人出什么,石頭還是剪刀。。:

所以寫個1-3的隨機數(shù)

int suiji=((int)(Math.random()*3)+1);

4.最后switch判斷,1的話是石頭,2剪刀,3布

機器人完整代碼:

import java.util.Scanner;

public class pc {
 String name;
 int jifen;
Scanner input=new Scanner(System.in);
 public void pcname(){
  int pcjuese=input.nextInt();
  switch (pcjuese) {
   case 1:
    name="張飛";
    System.out.println("你選擇了"+name+"對戰(zhàn)");
    break;
   case 2:
    name="趙云";
    System.out.println("你選擇了"+name+"對戰(zhàn)");
    break;
   case 3:
    name="貂蟬";
    System.out.println("你選擇了"+name+"對戰(zhàn)");
    break;
   default:
    System.out.println("還沒這個人");
  }

 }
 public int chuquan(){
  int suiji=((int)(Math.random()*3)+1);
  switch (suiji){
   case 1:
    System.out.println(name+"出拳:石頭");
    break;
   case 2:
    System.out.println(name+"出拳:剪刀");
    break;
   case 3:
    System.out.println(name+"出拳:布");
    break;
   default:

  }
  return suiji;
 }
}

二、玩家類:

1.和機器人一樣,定義兩個成員變量,用于作為名字和積分:

String name="1";
int jifen=0;

2.創(chuàng)建一個“renname”方法,用于定義玩家的昵稱

3.創(chuàng)建一個”chuquan“方法,用于定義玩家出拳

然后switch進行判斷,按1出石頭,按2出剪刀,按3出布

玩家完整代碼:

import java.util.Scanner;

public class ren
{
 String name="1";
 int jifen=0;

 Scanner input=new Scanner(System.in);
 public void renname(){
  System.out.println("起一個昵稱吧:");
   name=input.next();
  System.out.println("你的昵稱為:"+name);
 }

 public int chuquan(){
  System.out.println("出拳:1.石頭 2.剪刀 3.布");
  int show=input.nextInt();
  switch (show){
   case 1:
    System.out.println(name+" 出石頭");
    break;
   case 2:
    System.out.println(name+" 出剪刀");
    break;
   case 3:
    System.out.println(name+" 出布");
    break;
   default :
    System.out.println("你準備出個大炮呢?");
  }
  return show;
 }
}

三、游戲類

1.定義兩個成員變量和new兩個對象:

int count; //進行了幾局游戲
int pingju; //平局場次
ren Ren =new ren();
pc computer =new pc();

2.創(chuàng)建“game”方法,用來調用機器人類和玩家類,以及實現(xiàn)游戲功能

3.首先調用Ren.name()來用于讓玩家創(chuàng)建昵稱

3.1.然后調用computer.name()來用于讓玩家選擇和誰對戰(zhàn)

4.一切ok,開始進行功能實現(xiàn):

首先創(chuàng)建兩個變量,一個是機器人出拳,一個是玩家出拳

int pcquan; //pc出拳
int personquan; //人出拳

y/n開始游戲和退出游戲

開始進行游戲功能實現(xiàn)編寫

5.循環(huán)的時候把機器人和玩家出拳的方法賦值給上面兩個定義出拳的變量

6.功能ok后創(chuàng)建一個方法,用于定義計分板,這個就很簡單了,直接附上游戲類完整代碼:

import java.util.Scanner;

public class w {
  
  int count; //進行了幾局游戲
  int pingju; //平局場次
  ren Ren =new ren();
  pc computer =new pc();

 

  Scanner input=new Scanner(System.in);
public void game(){
  
  System.out.println("規(guī)則:1.石頭 2.剪刀 3.布");

  Ren.renname();
  System.out.print("請選擇對方角色(1.張飛 2.趙云 3.貂蟬): "); // 選擇對方角色
  computer.pcname();
  System.out.println("要開始嘛?(y/n)");
  String yn=input.next();
  int pcquan; //pc出拳
  int personquan; //人出拳
  while (yn.equalsIgnoreCase("y")){

    personquan=Ren.chuquan(); //人出拳
    pcquan=computer.chuquan(); //pc出拳
    if((pcquan==1&personquan==1)|(pcquan==2&personquan==2)|(pcquan==3&personquan==3)){
      System.out.println("平局");
      pingju++;
    }else if((pcquan==1&personquan==3)|(pcquan==2&personquan==1)|(pcquan==3&personquan==2)){
      System.out.println(Ren.name+"贏了");
      computer.jifen++;
    }else {
      System.out.println(computer.name+"贏了");
      Ren.jifen++;
    }
    count++; //表示進行了一局游戲
    System.out.println("開始下一輪嘛?(y/n)");
    yn=input.next();
    if (yn.equalsIgnoreCase("n")){
      System.out.println("游戲結束");
      result();
    }

  }
}
  //比賽結果
  public void result(){
    System.out.println("-------------------------------");
    System.out.println(Ren.name+" VS "+computer.name);
    System.out.println("對戰(zhàn)次數(shù):"+count);
    System.out.println("平局"+pingju+"場");
    System.out.println(Ren.name+"贏了"+Ren.jifen+"場");
    System.out.println(computer.name+"贏了"+computer.jifen+"場");

    if(Ren.jifen> computer.jifen){
      System.out.println(Ren.name+"贏了");
    }else if (computer.jifen> Ren.jifen){
      System.out.println(computer.name+"贏了");
    }else {
      System.out.println("平局");
    }
  }
}

三、運行類

這個就不多說了,直接上代碼

public class test
{
  public static void main(String[] args) {
 w game=new w();
 ren ren=new ren();


  game.game();
  //game.result();
  }
}

到此這篇關于Java人機猜拳實現(xiàn)思路及方法的文章就介紹到這了,更多相關Java人機猜拳思路及方法內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 深入理解Java設計模式之享元模式

    深入理解Java設計模式之享元模式

    這篇文章主要介紹了JAVA設計模式之享元模式的的相關資料,文中示例代碼非常詳細,供大家參考和學習,感興趣的朋友可以了解下
    2021-11-11
  • Java數(shù)據類型之引用數(shù)據類型解讀

    Java數(shù)據類型之引用數(shù)據類型解讀

    這篇文章主要介紹了Java數(shù)據類型之引用數(shù)據類型,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • SpringBoot+Redis布隆過濾器防惡意流量擊穿緩存

    SpringBoot+Redis布隆過濾器防惡意流量擊穿緩存

    本文主要介紹了SpringBoot+Redis布隆過濾器防惡意流量擊穿緩存,文中根據實例編碼詳細介紹的十分詳盡,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 一文詳細講解Java的父子繼承、方法的重寫與super關鍵字

    一文詳細講解Java的父子繼承、方法的重寫與super關鍵字

    Java中繼承是通過extends關鍵字實現(xiàn),幫助減少代碼重復,提高復用性,子類繼承父類的屬性和方法,但私有成員除外,方法重寫(override)使子類改造父類方法以適應新功能,這篇文章主要介紹了Java的父子繼承、方法的重寫與super關鍵字的相關資料,需要的朋友可以參考下
    2024-10-10
  • 使用mockito編寫測試用例教程

    使用mockito編寫測試用例教程

    這篇文章主要為大家介紹了使用mockito編寫測試用例教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • JAVA API 實用類 String詳解

    JAVA API 實用類 String詳解

    這篇文章主要介紹了java String的深入理解的相關資料,希望通過本文大家能理解String的用法,需要的朋友可以參考下
    2021-10-10
  • Spring Security常用過濾器實例解析

    Spring Security常用過濾器實例解析

    這篇文章主要介紹了Spring Security常用過濾器實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • Java雙重校驗鎖單例原理

    Java雙重校驗鎖單例原理

    大家好,本篇文章主要講的是Java雙重校驗鎖單例原理,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01
  • Java編程時間日期API實例解析

    Java編程時間日期API實例解析

    本文主要介紹了Java編程時間日期API實例解析的相關內容,分享了一則實例,具有一定借鑒價值,需要的朋友可以參考下。
    2018-01-01
  • Java?NIO中四大核心組件的使用詳解

    Java?NIO中四大核心組件的使用詳解

    Java?NIO(New?IO)是Java?1.4版本中引入的一套全新的IO處理機制,而NIO提供了四個核心組件:Channel、Buffer、Selector和SelectionKey,本文就來簡單講講這四大組件的使用吧
    2023-05-05

最新評論