lz你好
具体代码如下:
import java.math.*;
import java.util.*;
public class GuessFist
{
private int
user,
computer;
public GuessFist()
{
user = 0;
computer = 0;
}
public void setUser()
{
Scanner in = new Scanner(System.in);
System.out.print ("该您出拳\n(1代表剪刀,2为石头,3为布)\n:");
user = in.nextInt();
}
public int getUser()
{
return user;
}
public void setComputer()
{
computer = (int)(Math.random() * 3 + 1);
}
public int getComputer()
{
return computer;
}
public String toString()
{
if(((user+1) % 3) < ((computer+1) % 3))
{
return "电脑出"+computer+"\n你输了>.<";
}
else if(user == computer)
{
return "电脑也是出的"+computer+"\n打平";
}
else
{
return "电脑出"+computer+"\n你赢了^_^";
}
}
public static void main(String[] args)
{
GuessFist g = new GuessFist();
g.setComputer();
g.setUser();
System.out.println (g);
}
}
运行结果:
ps:lz注意要把类文件名写为:GuessFist.java
希望能帮助你哈
import java.util.Random;
import java.util.Scanner;
public class Test
{
public static void main(String[] args) {
Random random = new Random();
System.out.println("开始游戏......");
Scanner scanner = new Scanner(System.in);
int computer = 0;
while(true)
{
System.out.print("电脑出:");
sleep();
computer = random.nextInt(3) + 1;
System.out.println(getName(computer));
System.out.print("请出拳:\n 1.剪刀;\n 2.石头;\n 3.布;\n 你出:");
sleep();
try
{
int youNum = scanner.nextInt();
if(youNum >=1 && youNum <=3)
{
System.out.println("你出的是:" + getName(youNum));
sleep();
int result = isYouWin(computer, youNum);
if(result == -1)
{
System.out.println("悲剧!你输了");
}
else if(result == 0)
{
System.out.println("以和为贵,以和为贵!");
}
else if(result == 1)
{
System.out.println("恭喜恭喜,You Win!");
}
}
else
{
System.out.println("别耍赖,你乱出!");
}
}
catch(Exception e)
{
System.out.println("别耍赖,你乱出!");
}
System.out.print("继续游戏?n/退出,任意键继续:");
if("n".equals(scanner.next()))
{
System.out.println("退出游戏!");
System.exit(1);
}
System.out.println("------------------------");
}
}
static int isYouWin(int computer, int youNum)
{
switch(computer)
{
case 1 :
switch (youNum) {
case 1:
return 0;
case 2:
return 1;
case 3:
return -1;
default:
break;
}
break;
case 2 :
switch (youNum) {
case 1:
return -1;
case 2:
return 0;
case 3:
return 1;
default:
break;
}
break;
case 3 :
switch (youNum) {
case 1:
return 1;
case 2:
return -1;
case 3:
return 0;
default:
break;
}
break;
}
return 0;
}
static void sleep()
{
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
static String getName(int cmd)
{
String name = null;
switch (cmd) {
case 1:
name = "剪刀";
break;
case 2:
name = "石头";
break;
case 3:
name = "布";
break;
default:
break;
}
return name;
}
}