用java写一个猜谜游戏

进口?Java . util . scanner;

公共?班级?游戏?{

私人?扫描仪?扫描?=?新的?扫描仪(system . in);

私人?字符串?规则[]?=?{ " "、"剪刀"、"石头"、"布" };

私人?字符串?角色[]?=?{“”、“刘备”、“孙权”、“曹操”};

私人?电脑?电脑;

私人?用户?用户;

私人?int?圆形计数;

私人?游戏(){

roundCount?=?0;

}

公共?静电?作废?main(String[]?args)?{

游戏?游戏?=?新的?game();

game . start();

}

publicvoid?start(){

电脑?=?新的?计算机();

System.out.println("-?-?欢迎来到游戏世界?-?-");

System.out.println("**?******************");

System.out.println("**?猜测,开始?**");

System.out.println("**?******************");

system . out . println();

System.out.println("打孔规则:1。剪刀?2.石头?3.布”);

System.out.print("请选择一个角色(1:刘备?2.孙权?3.曹操)”);

int?userRole?=?scan . nextint();

if(userRole?& gt=1?& amp& amp?userRole?& lt=3){

用户?=?新的?用户(角色[用户角色]);

system . out . println();

System.out.print("要开始吗?(是/否)?”);

字符串?开始?=?scan . next();

if(start . equals(" y "){

round();

}

不然呢?if(start . equals(" n "){

}

}

}

私人?作废?round(){

roundCount?++;

system . out . println();

System.out.print("请打卡:1。剪刀?2.石头?3.布?(输入相应的数字):?”);

int?userRule?=?user . round();

if(userRule?& gt=?1?& amp& amp?userRule?& lt=?3){

int?计算机规则?=?计算机. round();

judge(userRule,computer rule);

system . out . println();

System.out.print("是否要开始下一轮(y/n)?");

字符串?下一个?=?scan . next();

if(next . equals(" y "){

round();

}

不然呢?if(next . equals(" n "){

end();

}

}

}

私人?作废?judge(int?ur,int?cr){

System.out.println("你打卡:"+?规则[ur]);

System.out.println("电脑打卡:"+?规则[Cr]);

如果(ur?==?cr){

System.out.println("结果:平局,活该!嘿嘿,等着瞧吧!”);

}

不然呢?如果((ur?==?1?& amp& amp?cr==?3)||

(ur?==?2?& amp& amp?cr?==?1)||

(ur?==?3?& amp& amp?cr?==?2)){

System.out.println("结果:你赢了!");

user . win();

}

否则{

System.out.println("结果:你输了!");

计算机. win();

}

}

私人?作废?end(){

System.out.println("-?- ");

system . out . println(user . getname()?+?《VS》?+?computer . getname());

System.out.println("战斗次数:"?+?round count);

if(computer.getWin()?==?user.getWin()){

System.out.println("结果:平局,下次再跟你比!"" );

}

不然呢?if(computer.getWin()?& gt?user.getWin()){

System.out.println("结果:你输了!电脑赢了“+?Computer.getWin()+ "times!");

}?

否则{

System.out.println("结果:你赢了!你赢了“+?User.getWin()+ "times!");

}

System.out.println("-?- ");

}

班级?计算机{

私人?int?赢;

私人?字符串?姓名;

公共?计算机(){

赢?=?0;

名字?=?“匿名”;

}

公共?int?round(){

回归?(int)(System.currentTimeMillis()?%?3)?+?1;//随机返回1,2,3。

}

公共?字符串?getName(){

回归?姓名;

}

公共?作废?win(){

赢?++;

}

公共?int?getWin(){

回归?赢;

}

}

班级?用户{

私人?int?赢;

私人?字符串?名字?=?"";

公共?用户(字符串?名称){

这个名字?=?姓名;

赢?=?0;

}

公共?int?round(){

回归?scan . nextint();

}

公共?字符串?getName(){

回归?姓名;

}

公共?作废?win(){

赢?++;

}

公共?int?getWin(){

回归?赢;

}

}

}你刚才写的要符合你题目的要求。没有什么输赢的小技巧,是我随便写的。