java学习:
之前写的关于猜拳的代码,如有问题,请联系我
/**
* 猜拳游戏
*/
import java.util.*;
public class Caiqian {
public static void main(String[] args) {
// TODO Auto-generated method stub
PlayCaiqiaGgame pcg = new PlayCaiqiaGgame();
pcg.play();
}
}
//游戏开始
class PlayCaiqiaGgame{
Print print1 = new Print();
Game g1 = new Game();
//开始方法
public void play(){
print1.startprint();//输出前面提示信息
print1.print(); //输出规则
int k = 1;
do{
System.out.print("请输入:");
g1.getpersion();
g1.getcomputer();
g1.compare();
System.out.print("是否继续: \n 1 继续: \n 0 停止 ");
Scanner sc = new Scanner(System.in);
k = sc.nextInt();
if(k!=1){
System.out.print("已退出!");
}
}while(k==1);
}
}
//输出前面提示信息
class Print{
//提示信息
public void startprint(){
System.out.println("开始猜拳游戏!!!");
}
//规则
public void print(){
System.out.println("用0表示石头;");
System.out.println("用1表示剪刀;");
System.out.println("用2表示布;");
}
}
//游戏主体类,判断赢家
class Game{
int n=0,m=0;
//判断0,1,2表示出的是什么(石头、剪刀、布)
public String quan(int n){
String a = null;
switch(n){
case 0:
a="石头";
break;
case 1:
a="剪刀";
break;
case 2:
a="布";
break;
}
return a;
}
//输出语句
public void print(){
System.out.println("相同,平局!");
}
public void print1(){
System.out.println("电脑赢!");
}
public void print2(){
System.out.println("你赢了!");
}
//获得用户输入数
public void getpersion(){
do{
Scanner sc = new Scanner(System.in);
this.n = sc.nextInt();
if(n!=0&&n!=1&&n!=2)
{
System.out.println("输入错误,请重新输入:");
}
}while(n!=0&&n!=1&&n!=2);
System.out.println("你出的是:" + this.quan(n));
}
//获得电脑数
public void getcomputer(){
this.m = (int)(Math.random()*3);
System.out.println("电脑出的是:" + this.quan(m));
}
//判断谁赢
public void compare(){
if(m==n){
this.print();
}
else if((m==2&&n==0)||(m==0&&n==1)||(m==1&&n==2)){
this.print1();
}
else{
this.print2();
}
}
}