久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java控制臺(tái)實(shí)現(xiàn)猜拳游戲

瀏覽:2日期:2022-08-18 10:24:57

本文實(shí)例為大家分享了Java控制臺(tái)實(shí)現(xiàn)猜拳游戲的具體代碼,供大家參考,具體內(nèi)容如下

1、目標(biāo)

通過控制臺(tái)實(shí)現(xiàn)一個(gè)人機(jī)對(duì)戰(zhàn)的猜拳游戲,用戶通過輸入(1.剪刀 2.石頭 3.布),機(jī)器隨機(jī)生成(1.剪刀 2.石頭 3.布),勝者積分,n 局以后通過積分的多少判定勝負(fù)。

2、源碼

根據(jù)目標(biāo)的要求,可以大概知道,我們需要的類有:

①一個(gè)用戶類User,用于獲得和存儲(chǔ)用戶的出拳;

②一個(gè)機(jī)器人的類Robot,用于隨機(jī)生成機(jī)器人的出拳;

③一個(gè)Game類,是存放核心代碼的類,用戶和機(jī)器人的出拳在這里進(jìn)行對(duì)比,對(duì)結(jié)果進(jìn)行記錄,最后輸出結(jié)果;

④最后是一個(gè)調(diào)用各個(gè)方法的Guess類。

直接上代碼:

User.java

import java.util.Scanner;public class User{ static Scanner input = new Scanner(System.in); int user = 0;//用戶出拳 int score = 0;//用戶積分 int num = 0;//對(duì)戰(zhàn)局?jǐn)?shù) public int setUser(){ System.out.println('請(qǐng)輸入:1.剪刀 2.石頭 3.布'); user = input.nextInt(); if (user == 1){System.out.println('用戶出拳:剪刀'); }else if (user == 2){System.out.println('用戶出拳:石頭'); }else if (user == 3){System.out.println('用戶出拳:布'); } return user; }}

Robot.java

import java.util.Random;public class Robot { int id = 0;//獲得機(jī)器人的出手 int score = 0;//機(jī)器人的積分 //獲得機(jī)器人的出拳 public int setId(){ Random random = new Random(); int r = random.nextInt(3); id = r + 1;//獲取機(jī)器人隨機(jī)出拳 if (id == 1){ System.out.println('機(jī)器人出拳:剪刀'); }else if (id == 2){ System.out.println('機(jī)器人出拳:石頭'); }else if (id == 3){ System.out.println('機(jī)器人出拳:布'); } return id; }}

Game.java

import java.util.Scanner;public class Game { //對(duì)用戶類和機(jī)器人類進(jìn)行初始化 User user = new User(); Robot robot = new Robot(); public void GameStart() { //初始化界面 System.out.println('-------------歡迎進(jìn)入猜拳游戲---------------'); System.out.println(); System.out.println('******************************************'); System.out.println('——————出拳規(guī)則:1.剪刀 2.石頭 3.布——————————'); System.out.println('-------------》》》猜拳開始《《《------------'); System.out.println('-------------------------------------------'); Scanner input = new Scanner(System.in); //獲得用戶想要進(jìn)行的對(duì)戰(zhàn)次數(shù) System.out.println('請(qǐng)輸入對(duì)戰(zhàn)局?jǐn)?shù):'); user.num = input.nextInt(); System.out.println('游戲開始');int userFirst;//用戶出拳 int robotFirst;//機(jī)器人出拳 for (int i = 0; i < user.num; i++) {//獲取雙方的出拳userFirst = user.setUser();robotFirst = robot.setId();//判斷勝負(fù)if (userFirst == robotFirst) { System.out.println('結(jié)果:平局,不積分。');} else if ((userFirst == 2 && robotFirst == 1) || (userFirst == 3 && robotFirst == 2)) { System.out.println('結(jié)果:你贏了,加一分!'); user.score++;} else { System.out.println('結(jié)果:你輸了,機(jī)器人加一分。'); robot.score++;} } //顯示結(jié)果 showResult(); } //輸出對(duì)戰(zhàn)結(jié)果 private void showResult() { //顯示對(duì)戰(zhàn)次數(shù) System.out.println('------------------------------'); System.out.println('對(duì)戰(zhàn)次數(shù):' + user.num); //顯示最終得分 System.out.println('n姓名t得分'); System.out.println('用戶' + 't' + user.score); System.out.println('機(jī)器人' + 't' + robot.score + 'n'); //顯示對(duì)戰(zhàn)結(jié)果 int result = Result(); if (result == 1) { System.out.println('結(jié)果:打成平手。'); } else if (result == 2) { System.out.println('結(jié)果:恭喜你贏得對(duì)戰(zhàn)!');//用戶獲勝 } else { System.out.println('結(jié)果:你輸了,不氣餒,下次再來');//計(jì)算機(jī)贏 } System.out.println('游戲結(jié)束'); System.out.println('--------------------------'); } //計(jì)算比賽結(jié)果 private int Result() { if (user.score == robot.score) { return 1; } else if (user.score > robot.score) { return 2; } else { return 3; } }}

Guess.java

public class Guess { public static void main(String[] args) { Game game = new Game();//調(diào)用輸出比賽結(jié)果的方法 game.GameStart(); }}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 江源县| 鄢陵县| 旅游| 泽普县| 鞍山市| 镇平县| 台州市| 鹤峰县| 土默特左旗| 安阳县| 交城县| 江津市| 巨鹿县| 达孜县| 六安市| 汉沽区| 灌南县| 蓬安县| 库车县| 蛟河市| 扶绥县| 镇原县| 琼中| 东城区| 朝阳县| 汪清县| 临西县| 台安县| 达尔| 临潭县| 望谟县| 宁南县| 广安市| 伊川县| 甘南县| 小金县| 祁阳县| 灯塔市| 察雅县| 舒兰市| 黔西县|