每次尝试时,都会给我一个'非法的类型开头'和'标识符预期'错误。
班级需要: name:字符名称 level:当前字符级别(默认为1) XP:当前的XP字符(默认为0) maxHP:字符的最大总HP(默认为20) HP:当前的HP角色(默认为maxHP) 黄金:当前黄金量(默认为100) 药水:当前的药水数量(默认为0)
这是我不知道该怎么做的地方。它还需要一个构造函数用于字符名称,以及一个布尔值isDead();检查HP是否高于0。 idk如何添加。
到目前为止,这是我自己的微弱尝试:
public class Character {
System.out.println("Enter your new character's name.");
System.out.println("\t");
String name = input.nextLine();
level = 1;
XP = 0;
maxHP = 20;
HP = maxHP;
gold = 100;
potions = 0;
}
答案 0 :(得分:1)
我真的建议你阅读一些documentation and tutorials这些基本的东西,如果不理解这一点,你就不会走得太远。
public static void main(String[] args) Method
(在此处进行计算)public Charachter(String name){ //pass the name while creating an object this.name=name; }
让它公开是最有意义的
public boolean isDead(){ if(this.HP>0) return true; else return false; }
通常方法具有以下结构:
能见度定义
定义此方法返回的内容(如果没有,则为空,也称为过程)
方法名称
:您传递的可能参数,将用于方法中的计算(不是您的情况)
答案 1 :(得分:0)
您必须定义类及其字段以及方法。这是一个让你入门的样本。
public class Character {
private String name;
private int level = 1;
private int xp = 0;
private int maxHp = 20;
private int curHp = maxHp;
private int gold = 100;
private int potions = 0;
/**
* Constructor
* @param name
*/
public Character(String name){
this.name = name;
}
public boolean isDead(){
return this.curHp == 0;
}
}
答案 2 :(得分:0)
如果你想要一个可以创建多个(一个类是什么)的角色 -
public class Character {
private int level, gold, potions;
private double xp, maxHP, hp; // maybe could be ints, not sure
public Character(String newName) {
name = newName;
level = 1;
xp = 0;
maxHP = 20;
hp = maxHP;
gold = 100;
potions = 0;
}
}
通常,您希望将IO与类创建隔离开来。
现在,您可以在new Character("Robert")
函数或任何您想要的上下文中使用main
创建一个新字符。您必须以相同的方式从用户那里获取名称。
答案 3 :(得分:-1)
您必须使用main
方法才能输入代码。就像这样:
public class Character
public static void main(String[] args) {
System.out.println("Enter your new character's name.");
System.out.println("\t");
new Character(input.nextLine());
}
public Character(String name) {
this.name = name;
}
String name;
int level = 1;
int XP = 0;
int maxHP = 20;
int HP = maxHP;
int gold = 100;
int potions = 0;
}
评论提出了许多其他改进,也在这里。