Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当另一个变量超过某个值时,如何向该变量添加增量?_Java_Eclipse_Increment - Fatal编程技术网

Java 当另一个变量超过某个值时,如何向该变量添加增量?

Java 当另一个变量超过某个值时,如何向该变量添加增量?,java,eclipse,increment,Java,Eclipse,Increment,我正在为自己编写一个程序,用于学习java。这是一种实验。它有玩家、动作、怪物、物品、游戏性等类。在我的类player中,我添加了一个名为lvlUp的构造函数,参数为exp。我的问题是,当一个玩家达到100 exp、200 exp、300 exp等时,我想增加他的lvl时,我需要写什么。当他达到100 exp时,他会提升一级,当他达到200 exp时,他会提升两级,等等。顺便说一句,经验是随机的,所以我想打印出剩余的经验以及。例如,他杀死了一个怪物并获得245经验,这应该是2级ups和45经验。

我正在为自己编写一个程序,用于学习java。这是一种实验。它有玩家、动作、怪物、物品、游戏性等类。在我的类player中,我添加了一个名为lvlUp的构造函数,参数为exp。我的问题是,当一个玩家达到100 exp、200 exp、300 exp等时,我想增加他的lvl时,我需要写什么。当他达到100 exp时,他会提升一级,当他达到200 exp时,他会提升两级,等等。顺便说一句,经验是随机的,所以我想打印出剩余的经验以及。例如,他杀死了一个怪物并获得245经验,这应该是2级ups和45经验。这是我的atm代码:

public int lvlUp(int exp) {
    if (exp < 100) {
        System.out.println("LvL: " + this.lvl + " You have " + exp + " experience!");
    } else if (exp == 100) {
        System.out.println("Level up !!!");
        exp = 0;
        this.lvl++;
    } else if (exp > 100) {
        System.out.println("Level up !!!");
        exp = exp - 100;
        this.lvl++;
        System.out.println("LvL: " + this.lvl + " You have " + exp + " experience!");
    }
    return this.lvl++;
public int-lvlUp(int-exp){
如果(exp<100){
System.out.println(“LvL:+this.LvL+”你有“+exp+”经验!”);
}否则如果(exp==100){
System.out.println(“升级!!!”;
exp=0;
这个.lvl++;
}否则,如果(exp>100){
System.out.println(“升级!!!”;
exp=exp-100;
这个.lvl++;
System.out.println(“LvL:+this.LvL+”你有“+exp+”经验!”);
}
返回这个.lvl++;

我想这就行了

// your class code
int exp = 0;
int lvl = 0;
// ...

public int lvlUp(int exp){  // increase the experience by exp and update the level
    this.exp += exp;
    lvl = exp / 100;  // integer division
    System.out.println("Levels: " + lvl + ", experience left: " + exp % 100);
    return lvl;
}

你需要像lvlBar这样的全局变量。这将作为玩家查看升级所需体验的级别计数器。

首先,你必须计算出玩家应该获得多少级别升级。要计算,请除以100

int levels = exp / 100;
由于这是整数运算,它将为您截断。(因此在您的
exp=245
示例中,级别将为2

接下来,使用该值来计算用户还剩下多少体验

exp = exp - (levels * 100);
最后,添加新的级别

this.lvl += levels;

这段代码仅在exp<200时有效。为了获得exp,我应该添加什么,例如,如果我有234 exp。lvl将是2,我希望exp为34。感谢您的建议,我将在我的项目中添加该变量:)