如何限制机器人在框架内的运动

时间:2016-02-02 21:27:45

标签: java

编写一个Java类Robot,它在构造函数中使用双x和y。机器人需要跟踪它在世界上的位置。 方法:

moveUp(double distance)
moveDown(double distance)
moveLeft(double distance)
moveRight(double distance)

使机器人不能超越(0,0)和(10,10)。如果尝试,它将在边界值处。例如,如果它在(1,5)并试图向左移动2,则它将在(0,5)处。

class Robot{
    Robot robot=new Robot(x,y) {
        robot.moveUp=robot.y-=;
        robot.moveLeft=robot.x-=;
        robot.moveDown=robot.y+=;
        robot.moveRight=robot.x+=;

        robot.math.min(0,0);
        robot.math.max(10,10);
    }
}

2 个答案:

答案 0 :(得分:1)

有一件事可以帮助我们使用一个简单的if语句来控制你的界限。像这样:

if(x < 0){
    x = 0;
} else if(x > 10){
    x = 10;
}

反之亦然。这将确保即使用户输入的移动值会将其移出边界,它也将保持在边界内。

答案 1 :(得分:0)

class Robot{
  Robot robot=new Robot(x,y) {
    robot.y-=robot.moveUp;
    robot.x-=robot.moveLeft;
    robot.y+=robot.moveDown;
    robot.x+=robot.moveRight;

    if(robot.y<0) robot.y=0;
    if(robot.y>10) robot.y=10;
    if(robot.x<0) robot.x=0;
    if(robot.x>10) robot.x=10;
}