九月周报第二周
这周学完学完面对对象高级后,写个了猜拳小游戏,写了我一个晚上,感觉太难了,但总体来说挺不错的。下面是猜拳小游戏的代码:
package com.kkb.task010203_002_01;
import java.util.Random;
import java.util.Scanner;
public class GuessPunch{
private int userScores = 0; //用户得到的分数
private int machineScores = 0; //机器得到的分数
public int win;
/**
* 构造方法
*/
public GuessPunch(){
}
/**
* 随机生成石头,包,剪刀
*/
private int random(){
Random random = new Random();
int num = (int)(random.nextInt(3)+1);
return num;
}
private String machineGuess(int n){
if(n==1)return "拳头";
else if(n==2)return "包";
return "剪刀";
}
/**
*
* 判断每局是否赢
* @return
*/
public void everyGameifwin(int n){
int mas = random(); //随机生成的数赋值给mas
if(mas == n) {
System.out.println("机器人出了:"+machineGuess(mas));
System.out.println("平局");
}
else if(mas==1&&n==3 || mas==2&&n==1 || mas==3&&n==2 ){
System.out.println("机器人出了:"+machineGuess(mas));
machineScores++;
System.out.println("机器人赢了这一局");
System.out.println("你的积分:"+userScores+"\t"+"机器的积分:"+machineScores);
if (machineScores>=3) win = 2;
}
else {
System.out.println("机器人出了:"+machineGuess(mas));
userScores++;
System.out.println("你赢了这一局");
System.out.println("你的积分:"+userScores+"\t"+"机器的积分:"+machineScores);
if (userScores>=3) win = 1;
}
}
}
package com.kkb.task010203_002_01;
import java.util.Scanner;
/**
* 猜拳游戏谁先拿到3分谁胜利
*/
public class GuessPunchTest {
public static void main(String[] args) {
GuessPunch guessPunch = new GuessPunch(); //创建GuessPunch对象
while (true){
System.out.println("请输入: 1.拳头 2.包 3.剪刀");
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
guessPunch.everyGameifwin(num);
if(guessPunch.win==1) {
System.out.println("最终是你赢了");
break;
}
else if(guessPunch.win==2) {
System.out.println("最终是机器赢了");
break;
}
}
System.out.println("====游戏结束====");
}
}
这里就是有个bug,输入1~3其他东西的时候不会保错,这个bug等我学完后面的异常处理后再修改这个bug。总之现在学的东西都挺简单的,不知道以后会不会更难。上周边学边刷题备考二级的感觉真不错。考完二级之后感觉有手就行的东西。