Java 创建bug类,将其移回原始位置

Java 创建bug类,将其移回原始位置,java,class,Java,Class,我对Java非常陌生,我对如何创建一个返回到原始位置的方法感到困惑,每一步都是如此 这是学校的作业,本质上,我必须创建一个Bug类,它在水平线上移动1个单位的距离,旋转,反转,然后移回原始位置 以下是我目前掌握的代码: public class Bug { private int position; private String direction; public void initialPosition(int position ) { positio

我对Java非常陌生,我对如何创建一个返回到原始位置的方法感到困惑,每一步都是如此

这是学校的作业,本质上,我必须创建一个Bug类,它在水平线上移动1个单位的距离,旋转,反转,然后移回原始位置

以下是我目前掌握的代码:

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我建议至少添加一个关于字符串比较的注释。他们越早知道越好。好的,谢谢你们两位的建议,如果我发现了,我会确保提供正确练习的纠正。