「java怎么写石头剪刀布」java怎么写石头剪刀布教程
今天给各位分享java怎么写石头剪刀布的知识,其中也会对java怎么写石头剪刀布教程进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、如何用JAVA设计一个游戏,电脑和人玩剪刀石头布游戏,并且能显示游戏结果?
- 2、java里,石头剪刀布的小程序怎么写的
- 3、java 剪刀石头布 这个游戏怎么用数组来实现,我把脑壳都想破了
- 4、请用java编写一个石头剪刀布的程序
- 5、用java编一个程序,实现两个人玩“石头、剪刀、布”,要求用枚举类型定义石头、剪刀、布
如何用JAVA设计一个游戏,电脑和人玩剪刀石头布游戏,并且能显示游戏结果?
写了一下,结果输出到桌面上,你把文件输出路径改成你的桌面路径就可以了,不知道你要不要最终结果
代码:
package com.hmall;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.Scanner;
/**
* @ClassName Mora
* @Description TODO
* @Author dell
* @Date 2019/7/1 13:03
* @Version 1.0
**/
public class Mora {
private static String calculate(String input) {
ListString list = new ArrayList();
list.add("拳头");
list.add("剪刀");
list.add("布");
Random r = new Random();
Integer random = r.nextInt(3);
String temp = list.get(random);
if (temp.equals(input)) {
return "您出了" + input + ",电脑出了" + temp + ",结果为平局";
} else {
if (input.equals("拳头")) {
if (temp.equals("剪刀")) {
return "您出了" + input + ",电脑出了" + temp + ",结果为您赢了";
} else {
return "您出了" + input + ",电脑出了" + temp + ",结果为您输了";
}
} else if (input.equals("剪刀")) {
if (temp.equals("拳头")) {
return "您出了" + input + ",电脑出了" + temp + ",结果为您输了";
} else {
return "您出了" + input + ",电脑出了" + temp + ",结果为您赢了";
}
} else if (input.equals("布")) {
if (temp.equals("拳头")) {
return "您出了" + input + ",电脑出了" + temp + ",结果为您赢了";
} else {
return "您出了" + input + ",电脑出了" + temp + ",结果为您输了";
}
} else {
return "输入数据有误";
}
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
Integer count;
while (true) {
System.out.println("请输入比赛场次(不能小于5):");
count = scanner.nextInt();
if (count = 5) {
System.out.println("比赛开始");
break;
}
System.out.println("输入小于5,请重新输入");
}
String input;
File f = new File("C:\\Users\\dell\\Desktop\\result.txt");
try {
BufferedWriter bw = new BufferedWriter(new FileWriter(f));
for (int i = 0; i count; i++) {
System.out.println("请输入您的选择:");
input = scanner.next();
String result = calculate(input);
bw.write(result);
bw.newLine();
System.out.println(result);
}
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
结果:
java里,石头剪刀布的小程序怎么写的
我原来写过一个,比你说的复杂一点你可以参考下。代码如下
import java.util.Scanner;
import java.util.Random;
public class Game {
//Player player;
//Computer computer;
int count = 0;
Scanner input = new Scanner(System.in);
Computer computer = new Computer();
Player player = new Player();
Random run = new Random();
public void playerChange() {
System.out.println("------------------------------------- 欢 迎 进 入 游 戏 世 界 -------------------------------------\n\n");
System.out.println(" **********************");
System.out.println(" ** 猜拳,开始 **");
System.out.println(" **********************\n\n\n");
System.out.println("出拳规则:1、剪刀 2、石头 3、布");
System.out.print("请选择人物: 1、曹操 2、刘备 3、孙权\n\n");
int no = input.nextInt();
int r = run.nextInt();
switch(no) {
case 1:
player.name = "曹操";
if(r no) {
computer.name = "刘备";
}
else {
computer.name = "孙权";
}
break;
case 2:
player.name = "刘备";
if(r no) {
computer.name = "曹操";
}
else {
computer.name = "孙权";
}
break;
case 3:
player.name = "孙权";
if(r no) {
computer.name = "刘备";
}
else {
computer.name = "曹操";
}
}
System.out.println(player.name + "\tVS\t" + computer.name);
attack();
}
public void attack() {
System.out.println("要开始么?y/n\n\n");
String no = input.next();
if(no.equals("n")) {
over();
}
do {
int perFist=player.showFist();
int comFist = computer.showFist();
System.out.println("回合数:" + count);
if(perFist==1 comFist == 2 || perFist == 2 comFist ==3 ||perFist == 3 comFist == 1 ) {
System.out.println("结果:^_^你输了,真笨!");
count++;
computer.score++;
}
else if(comFist == perFist) {
System.out.println("结果:和局,真衰,嘿嘿,等着瞧吧!");
count++;
}
else {
System.out.println("结果:恭喜!你赢了!");
count++;
player.score++;
}
System.out.println(player.name + "积分为:" + player.score + "\t\t" + computer.name + "积分为:" + computer.score);
System.out.println("是否继续?y/n");
no = input.next();
}
while(no.equals("y"));
System.out.println("----------------------------------------------------------------------------------------");
if(player.score computer.score) {
System.out.println("最终结果:" +player.name + "在" + count + "回合中战胜了" + computer.name);
}
else if(player.score computer.score) {
System.out.println("最终结果:" +computer.name + "在" + count + "回合中战胜了" + player.name);
}
else {
System.out.println("最终结果:" +player.name + "在" + count + "回合中和" + computer.name + "战平");
}
System.out.println("----------------------------------------------------------------------------------------");
over();
}
public void over(){
System.out.println("GAME OVER!");
}
}
import java.util.Random;
public class Computer {
String name;
int score;
public int showFist() {
Random run = new Random();
int moves = run.nextInt(3) + 1;
switch(moves) {
case 1:
System.out.println("电脑出:剪刀\n");
break;
case 2:
System.out.println("电脑出:石头\n");
break;
case 3:
System.out.println("电脑出:布\n");
}
return moves;
}
}
import java.util.Scanner;
public class Player {
String name;
int score;
public int showFist() {
Scanner input = new Scanner(System.in);
System.out.println("请选择招式:1、剪刀 2、石头 3、布");
int moves = input.nextInt();
switch(moves) {
case 1:
System.out.println("玩家出:剪刀");
break;
case 2:
System.out.println("玩家出:石头");
break;
case 3:
System.out.println("玩家出:布");
}
return moves;
}
}
public class Main {
public static void main(String[] args) {
Game game = new Game();
game.playerChange();
}
}
java 剪刀石头布 这个游戏怎么用数组来实现,我把脑壳都想破了
import java.util.*;
public class Exam
{
public static void main(String[] args)
{
String[] cq={"石头","剪刀","布"};
String guess;
int youwin=0,mewin=0,daping=0,total=0,n;
Random r=new Random();
Scanner sc=new Scanner(System.in);
while(true)
{
n=r.nextInt(3);
System.out.print("石头、剪刀、布,我已出,请你出(输入exit退出循环):");
guess=sc.nextLine();
if(guess.equals("exit"))
{
break;
}
else
{
total++;
System.out.print("这一次你出的是"+guess+",我出的是"+cq[n]+",所以");
if(guess.equals("石头")1==n || guess.equals("剪刀")2==n || guess.equals("布")0==n)
{
youwin++;
System.out.println("你赢了!");
}
else if(guess.equals(cq[n]))
{
daping++;
System.out.println("我们打平了!");
}
else
{
mewin++;
System.out.println("我赢了!");
}
}
}
System.out.println("总共玩了"+total+"次,你赢了"+youwin+"次,我赢了"+mewin+"次,打平"+daping+"次!");
}
}
请用java编写一个石头剪刀布的程序
import java.util.Random;
import java.util.a href=";tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YLuHn1rjm4njbLmHKbm1PB0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3ErHD4rj6krH0Yn1f1nWbvnHT4" target="_blank" class="baidu-highlight"Sc/aanner;
public class FingerGuessingGame {
private static a href=";tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YLuHn1rjm4njbLmHKbm1PB0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3ErHD4rj6krH0Yn1f1nWbvnHT4" target="_blank" class="baidu-highlight"Sc/aanner a href=";tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YLuHn1rjm4njbLmHKbm1PB0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3ErHD4rj6krH0Yn1f1nWbvnHT4" target="_blank" class="baidu-highlight"sc/a;
private static Random rad;
private static final String[] FINGERS = {"剪刀", "石头", "布"};
private static int win = 0, loose = 0, draw = 0;
public static void main(String[] args) {
sc = new Scanner(System.in);
rad = new Random();
while(true) {
System.out.println("~~~~~~~~~~~~剪刀石头布游戏,输入E可以退出~~~~~~~~~~~");
System.out.println("请选择你要出什么?Z——剪刀,X——石头,C——布");
String command = sc.nextLine();
int playerFinger = getValue(command);
if(playerFinger == -1) {
break;
} else if(playerFinger == 3) {
System.out.println("输入错误,请参考说明!");
continue;
}
System.out.println("你出的是" + FINGERS[playerFinger]);
int cpuFinger = rad.nextInt(3);
System.out.println("计算机出的是" + FINGERS[cpuFinger]);
int result = playerFinger - cpuFinger;
if(0 == result) {
System.out.println("平局!");
draw ++;
} else if(-1 == result) {
System.out.println("你输了!");
loose ++;
} else {
System.out.println("你赢了!");
win ++;
}
}
System.out.println("游戏结束!\r\n游戏统计次数");
System.out.println(String.format("赢:%d\r\n输:%d\r\n平局:%d", win, loose, draw));
}
private static int getValue(String command) {
if(command.equalsIgnoreCase("E")) {
return -1;
}
if(command.equalsIgnoreCase("Z")) {
return 0;
}
if(command.equalsIgnoreCase("X")) {
return 1;
}
if(command.equalsIgnoreCase("C")) {
return 2;
}
return 3;
}
}
用java编一个程序,实现两个人玩“石头、剪刀、布”,要求用枚举类型定义石头、剪刀、布
public class Test {
public enum Hand{//猜拳枚举
ROCK,SCISSORS,PAPER;
public static Hand getHand(int index){
Hand hand = null;
switch (index) {
case 0:
hand = Hand.ROCK;
break;
case 1:
hand = Hand.SCISSORS;
break;
case 2:
hand = Hand.PAPER;
break;
default:
hand = Hand.ROCK;
break;
}
return hand;
}
}
public static void main(String[] args) {
//两个人猜拳5次
for (int i = 0; i 5; i++) {
Hand hand1 = Hand.getHand((int)(Math.random()*3));
Hand hand2 = Hand.getHand((int)(Math.random()*3));
judge(hand1, hand2);
}
}
private static void judge(Hand hand1,Hand hand2){
if(hand1 == Hand.ROCK){
if(hand2 == Hand.ROCK){
System.out.println("第一个出拳头,第二个出拳头,平局");
}else if(hand2 == Hand.SCISSORS){
System.out.println("第一个出拳头,第二个出剪刀,第一个赢");
}else if(hand2 == Hand.PAPER){
System.out.println("第一个出拳头,第二个出布,第二个赢");
}
}else if(hand1 == Hand.SCISSORS){
if(hand2 == Hand.ROCK){
System.out.println("第一个出剪刀,第二个出拳头,第二个赢");
}else if(hand2 == Hand.SCISSORS){
System.out.println("第一个出剪刀,第二个出剪刀,平局");
}else if(hand2 == Hand.PAPER){
System.out.println("第一个出剪刀,第二个出布,第一个赢");
}
}else if(hand1 == Hand.PAPER){
if(hand2 == Hand.ROCK){
System.out.println("第一个出布,第二个出拳头,第一个赢");
}else if(hand2 == Hand.SCISSORS){
System.out.println("第一个出布,第二个出剪刀,第二个赢");
}else if(hand2 == Hand.PAPER){
System.out.println("第一个出布,第二个出布,平局");
}
}
}
}
应该不是最优解决办法,先这么着把
关于java怎么写石头剪刀布和java怎么写石头剪刀布教程的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。