用java生成一个小游戏
时间: 2024-05-29 19:01:49 浏览: 17
抛硬币游戏
1. 首先,需要创建一个Coin类,表示硬币,包含两个属性,正反面和概率(默认为0.5):
public class Coin {
private boolean isHead;
private double probability;
public Coin() {
this.isHead = true;
this.probability = 0.5;
}
public boolean isHead() {
return isHead;
}
public void setHead(boolean head) {
isHead = head;
}
public double getProbability() {
return probability;
}
public void setProbability(double probability) {
this.probability = probability;
}
}
2. 创建一个CoinGame类,表示游戏,包含一个硬币对象和一个计分器对象:
import java.util.Scanner;
public class CoinGame {
private Coin coin;
private ScoreCounter scoreCounter;
public CoinGame() {
this.coin = new Coin();
this.scoreCounter = new ScoreCounter();
}
public void play() {
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请选择猜测的面(1:正面,2:反面):");
int guess = scanner.nextInt();
boolean result = coin.isHead() ? guess == 1 : guess == 2;
if (result) {
System.out.println("恭喜你猜对了!");
scoreCounter.increase();
} else {
System.out.println("很遗憾你猜错了!");
scoreCounter.decrease();
}
System.out.println("当前得分:" + scoreCounter.getScore());
System.out.println("是否继续游戏(Y/N):");
String answer = scanner.next();
if (answer.equalsIgnoreCase("N")) {
break;
}
coin.setHead(Math.random() < coin.getProbability());
}
}
}
3. 创建一个ScoreCounter类,表示计分器,包含一个得分属性和增加/减少得分的方法:
public class ScoreCounter {
private int score;
public ScoreCounter() {
this.score = 0;
}
public int getScore() {
return score;
}
public void increase() {
score++;
}
public void decrease() {
score--;
}
}
4. 最后,在主函数中创建一个CoinGame对象并调用play方法即可:
public class Main {
public static void main(String[] args) {
CoinGame game = new CoinGame();
game.play();
}
}
这个游戏的规则很简单,每次玩家猜测硬币的正反面,如果猜对了得分加1,猜错了得分减1,每次玩家可以选择继续游戏或者结束游戏。硬币的正反面是随机的,可以通过设置概率来控制。
相关推荐
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)