java – 如何增量一个变量不超过最大值?

我正在为学校制作一个简单的视频游戏程序,我创建了一个方法,如果该方法被调用,玩家获得15个健康点。我必须保持健康的最大100,在我有限的编程能力,在这一点上,我做这样的事情。

public void getHealed(){
    if(health <= 85)
        health += 15;
    else if(health == 86)
        health += 14;
    else if(health == 87)
    health += 13; 
}// this would continue so that I would never go over 100

我理解我的语法关于isnt完美,但我的问题是,什么可能是一个更好的方法来做,因为我也必须做一个类似的东西与损坏点,而不是低于0。

我只是这样做。它基本上需要100(最大健康)和健康将有15个额外点之间的最小值。它确保用户的健康不超过100。

public void getHealed() {
    health = Math.min(health + 15, 100);
}

为了确保命中点不会降到零以下,你可以使用类似的函数:Math.max。

public void takeDamage(int damage) {
    if(damage > 0) {
        health = Math.max(health - damage, 0);
    }
}
http://stackoverflow.com/questions/18647214/how-can-i-increment-a-variable-without-exceeding-a-maximum-value

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:java – 如何增量一个变量不超过最大值?