编写两个称为isBetterThan的方法 一种。第一个应该取一个整数pts,如果玩家的分数超过true,则返回true 分,否则为假。 b。第二种方法应该使用另一个Player对象,如果此播放器具有 比其他玩家得分更高,否则为假。 C。在此方法之后的评论中,解释了为什么您不能创建另一个isBetterThan 接受另一个玩家对象并返回字符串“ yes”的方法(如果该玩家具有 比其他玩家多的得分,否则为字符串“否”。
我已经做了第一个,但是不知道如何做第二个。我不知道如何调用新的Player对象作为输入。
public class Player{
private String name;
private int points;
private int level;
public static final int MAX_LEVEL = 10;
public static int finished = 0;
public boolean isBetterThan(int value){
if(value>points)
return true;
else
return false;
}
一种方法,它会给我比其他方法更好的方法...我已经有一个主要方法调用这些方法进行测试。
答案 0 :(得分:1)
这里:
public boolean isBetterThan(int value){
允许您执行:例如somePlayer.isBetterThan(5)
。
现在只需进入并添加
public boolean isBetterThan(Player otherPlayer){
if (this.points <= otherPlayer.points) ...
并添加您想要发生的比较/决策类型。为了避免代码重复,您可以简单地将方法实现为
return isBetterThan(otherPlayer.points)
但是,这就引出了一个问题,为什么您要使用两个API做类似的事情。我认为仅其他isBetterThan(Player)
方法会更合理。您会发现,与简单的int值进行比较的API基本上将有关“级别和指向”外界的视图外部化了。因此,要么实际的“优于”是实际上仅基于该数字,要么更为复杂。