LeetCode每日一题1041困于环中的机器人

1.先上代码

public class Solution_1041 {
    public boolean isRobotBounded(String instructions) {
        int n = instructions.length(), x = 0, y = 0, direction = 0;    //x,y分别表示机器人的横纵坐标, direction表示方向:0表示北,1表示东,2表示南,3表示西
        for (int i = 0; i < n; i++) {
            char ch = instructions.charAt(i);
            switch (ch) {
                case 'G':
                    switch (direction) {
                        case 0:
                            ++y;
                            break;
                        case 1:
                            ++x;
                            break;
                        case 2:
                            --y;
                            break;
                        case 3:
                            --x;
                            break;
                    }
                    break;
                case 'L':
                    direction = (direction + 4 - 1) % 4;
                    break;
                case 'R':
                    direction = (direction + 4 + 1) % 4;
                    break;
            }
        }
        if (x == 0 && y == 0) return true;
        if (direction != 0) return true;
        return false;
    }
}

2.一些问题

使用switch结构进行分支选择千万记得在每个分支最后加上break语句!!!

使用switch结构进行分支选择千万记得在每个分支最后加上break语句!!!

使用switch结构进行分支选择千万记得在每个分支最后加上break语句!!!

因为不加break的话会执行完想要的分支后还会继续执行后续的分支。

 

你可能感兴趣的:(JAVA,switch语句,leetcode,机器人,算法,力扣)