溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

java項(xiàng)目如何實(shí)現(xiàn)猜拳小游戲

發(fā)布時(shí)間:2020-07-21 14:47:40 來(lái)源:億速云 閱讀:158 作者:小豬 欄目:編程語(yǔ)言

小編這次要給大家分享的是java項(xiàng)目如何實(shí)現(xiàn)猜拳小游戲,文章內(nèi)容豐富,感興趣的小伙伴可以來(lái)了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。

項(xiàng)目名稱

猜拳小游戲

項(xiàng)目描述

玩家與電腦進(jìn)行猜拳游戲,玩家行為采用輸入方式,電腦行為采用隨機(jī)形式。

代碼實(shí)現(xiàn)

測(cè)試類

public class Test {
  public static void main(String[] args) {
    Game game = new Game();
    game.start();
  }
}

主類:實(shí)現(xiàn)主方法

public class Game {
  private People people;
  private Computer computer;
  public Game(){
    people = new People("zs");
    computer = new Computer("computer");
  }
  public void start(){
    boolean flag = true;
    while (flag) {
      System.out.println("開始游戲:");
      int count = 0;
      while (count < 3) {
        String peopleFist = people.doFist();
        String comFist = computer.doFist();
        //people贏
        if (peopleFist.equals("石頭") && comFist.equals("剪刀") ||
            peopleFist.equals("剪刀") && comFist.equals("布") ||
            peopleFist.equals("布") && comFist.equals("石頭")) {
          System.out.println(people.getName() + "贏了");
          people.addScore(1);
        } else if (peopleFist.equals("石頭") && comFist.equals("石頭") ||
            peopleFist.equals("剪刀") && comFist.equals("剪刀") ||
            peopleFist.equals("布") && comFist.equals("布")) {
          System.out.println("平局");
        } else if (peopleFist.equals("石頭") && comFist.equals("布") ||
            peopleFist.equals("剪刀") && comFist.equals("石頭") ||
            peopleFist.equals("布") && comFist.equals("剪刀")) {
          System.out.println(computer.getName() + "贏了");
          computer.addScore(1);
        }
        count++;
      }
      if (people.getScore() > computer.getScore()) {
        System.out.println(people.getName() + "贏了 " + people.getScore() + ":" + computer.getScore());
      } else if (people.getScore() == computer.getScore()) {
        System.out.println("平局");
      } else if (people.getScore() < computer.getScore()) {
        System.out.println(computer.getName() + "贏了 " + computer.getScore() + ":" + people.getScore());
      }
      System.out.println("是否開始新游戲:");
      Scanner scanner = new Scanner(System.in);
      String str = scanner.next();
      if (str.equals("否")) {
        flag = false;
      }else {
        people.setScore();
        computer.setScore();
      }
    }
  }
}

玩家

public class People {
  private String name;
  private int score;
  public People(String name){
    this.name = name;
    score = 0;
  }
  public String getName(){
    return name;
  }
  public void addScore(int score){
    this.score += score;
  }
  public int getScore(){
    return score;
  }
  public int setScore(){
    this.score = 0;
    return score;
  }
  public String doFist(){
    System.out.println("請(qǐng)出拳:");
    Scanner scanner = new Scanner(System.in);
    String fist = scanner.next();
    return fist;
  }
}

電腦

public class Computer {
  private String name;
  private int score;
  public Computer(String name){
    this.name = name;
    score = 0;
  }
  public String getName(){
    return name;
  }
  public void addScore(int score){
    this.score += score;
  }
  public int getScore(){
    return score;
  }
  public int setScore(){
    this.score = 0;
    return score;
  }
  public String doFist(){
    Random random = new Random();
    int n = random.nextInt(3);
    String fist;
    if(n == 0){
      fist = "石頭";
    }else if(n == 1){
      fist = "剪刀";
    }else {
      fist = "布";
    }
    System.out.println("對(duì)方出的是:"+fist);
    return fist;
  }
}

看完這篇關(guān)于java項(xiàng)目如何實(shí)現(xiàn)猜拳小游戲的文章,如果覺得文章內(nèi)容寫得不錯(cuò)的話,可以把它分享出去給更多人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI