關於java面向對象QuickHit項目實例
Game類:用來得到隨機出現的字符串(隨機打印的字符串,然後玩家進行輸入字符串)
public class Game {
private String sbString;
Random random = new Random();
public String player(int level) {
sbString="";
for (int i = 0; i < level+1; i++) {
int rand = random.nextInt(level+1);
switch (rand) {
case 0:
sbString += "1";
break;
case 1:
sbString += "2";
break;
case 2:
sbString += "3";
break;
case 3:
sbString += "4";
break;
case 4:
sbString += "5";
break;
case 5:
sbString += "6";
break;
default:
break;
}
}
return sbString;
}
}
Level類:進行判斷是否輸入正確,進行判斷時間以及判斷級別
public class Level {
Game game = new Game();
Scanner san = new Scanner(System.in);
Date dt1 = new Date();
Date dt2;
int num = 0;
int level = 1;
public void level() {
do {
dt2 = new Date();
if (level==6) {
System.out.println("已通過!!!");
break;
}
if (num == 4) {
num = 0;
level++;
}
if (dt1.getSeconds() > dt2.getSeconds()) {
if (dt1.getSeconds() - dt2.getSeconds() > 30) {
System.out.println("超時!!!");
break;
} else {
String sbString = game.player(level);
System.out.println(sbString);
String newString = san.next();
if (newString .equals(sbString) ) {
System.out.println("輸入正確");
num++;
} else {
System.out.println("輸出錯誤");
break;
}
}
} else if (dt1.getSeconds() < dt2.getSeconds()) {
if (dt2.getSeconds() - dt1.getSeconds() > 30) {
System.out.println("超時!!!");
break;
} else {
String sbString = game.player(level);
System.out.println(sbString);
String newString = san.next();
if (newString.equals(sbString)) {
System.out.println("輸入正確");
num++;
} else {
System.out.println("輸出錯誤");
break;
}
}
}
} while (true);
}
}
Test:測試類(main方法)進行運行代碼
public class Test {
public static void main(String[] args) {
Level level=new Level();
level.level();
}
}