Java 创建bug类,将其移回原始位置
我对Java非常陌生,我对如何创建一个返回到原始位置的方法感到困惑,每一步都是如此 这是学校的作业,本质上,我必须创建一个Bug类,它在水平线上移动1个单位的距离,旋转,反转,然后移回原始位置 以下是我目前掌握的代码:Java 创建bug类,将其移回原始位置,java,class,Java,Class,我对Java非常陌生,我对如何创建一个返回到原始位置的方法感到困惑,每一步都是如此 这是学校的作业,本质上,我必须创建一个Bug类,它在水平线上移动1个单位的距离,旋转,反转,然后移回原始位置 以下是我目前掌握的代码: public class Bug { private int position; private String direction; public void initialPosition(int position ) { positio
public class Bug
{
private int position;
private String direction;
public void initialPosition(int position ) {
position=0;
}
public void initialDirection(String direction) {
direction="right";
}
public void setPosition (int position) {
this.position = position;
}
public int getPosition() {
return position;
}
public void setDirection (String direction) {
this.direction = direction;
}
public String getDirection() {
return direction;
}
public void move() {
position+=1;
}
public void reverseDirection() {
if (direction=="right") {
direction="left";
}
else {
direction="right";
}
}
public String toString() {
return "Position: " + position + " & Direction: " + direction;
}
}
任何关于代码的提示都将不胜感激。谢谢 在move()函数中,获取当前方向,然后使用if语句
if (direction.equals("right")) {
position+=1;
}
else {
position-=1;
}
备注:在setter中,您可以使用参数隐藏属性,因为它们具有相同的名称。--在
initialPosition(…)
和initialDirection(…)
中,为参数分配一个新值。即使您访问的是this.position
(或this.direction
),该参数也是多余的。--你的方向对你的位置没有影响(你总是只是把代码> 1代码/代码>添加到你当前的位置)。不完全确定你在问什么,也许考虑把你的问题改成更具体的东西。另外,您不应该在字符串比较中使用=
,您应该direction.equals(“right”)
参考@Dmich提到的=
:哦,好的,我现在明白了。谢谢我会做好准备的change@xmdoh初始位置和初始方向不正确。您正在忽略传递的参数。例如,对于初始位置,您应该编写以下内容:position=position;我知道,但考虑到这是学校的作业,而且他们的老师很可能熟悉他们的代码,我决定让我的答案与他们的代码匹配。即使你没有解决这个特定问题,你至少应该提到它。@RyanJ我建议至少添加一个关于字符串比较的注释。他们越早知道越好。好的,谢谢你们两位的建议,如果我发现了,我会确保提供正确练习的纠正。