
# 人狗大战的JAVA代码实现
在这篇文章中,我们将使用Java语言来模拟一个简单的人狗大战游戏。游戏中有两种角色:人和狗。每个角色都有自己的生命值和攻击力,玩家可以通过选择攻击或者防御来与对手战斗。以下是游戏的基本框架和实现代码。
java
import java.util.Random;
import java.util.Scanner;
class Character {
String name;
int health;
int attackPower;
Character(String name, int health, int attackPower) {
this.name = name;
this.health = health;
this.attackPower = attackPower;
}
void attack(Character opponent) {
System.out.println(this.name + " attacks " + opponent.name + " for " + this.attackPower + " damage!");
opponent.health -= this.attackPower;
if (opponent.health < 0) {
opponent.health = 0;
}
}
boolean isAlive() {
return this.health > 0;
}
}
public class DogVsHumanGame {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
Random random = new Random();
// 创建角色
Character human = new Character("人类", 100, random.nextInt(20) + 5);
Character dog = new Character("狗", 80, random.nextInt(15) + 5);
// 游戏循环
while (human.isAlive() && dog.isAlive()) {
System.out.println("选择行动: 1. 攻击 2. 防御");
int action = scanner.nextInt();
if (action == 1) {
human.attack(dog);
} else {
System.out.println(human.name + " chooses to defend.");
}
if (dog.isAlive()) {
dog.attack(human);
}
// 显示生命值
System.out.println(human.name + " 生命值: " + human.health);
System.out.println(dog.name + " 生命值: " + dog.health);
}
// 结果展示
if (human.isAlive()) {
System.out.println(human.name + " 胜利!");
} else {
System.out.println(dog.name + " 胜利!");
}
scanner.close();
}
}
以上代码实现了一个简单的人狗大战游戏。角色被定义为`Character`类,包含名字、生命值和攻击力属性。在主类`DogVsHumanGame`中,我们创建了人类和狗的实例,并通过循环让他们交替进行攻击。用户的输入决定了人类的行为。游戏胜负也在循环结束后显示。
通过这样的实现,我们能够理解如何利用面向对象编程构建简单的游戏逻辑,实现用户交互,为编程学习奠定基础。