在学习一个猜字符的小游戏,这个break跳出循环的部分怎么理解?

我百度到的说for嵌套if语句的break,是终止for循环,
那这里就应该是跳出了for(int j=0;j<chs.length;j++)这个循环,这个跳出循环是直接跳出该for循环,
去执行外面的那个循环for(int i=0;i<input.length;i++),执行i++,再判断i<input.length,
而不再执行j++,然后判断j<chs.length,了吗?

还是会继续j++,执行这个for(int j=0;j<chs.length;j++)循环

代码如下;

    /**
     * 比较玩家输入的字母序列和程序所生产的字母序列,逐一比较字符和位置,并记载比较结果
     * @param chs     程序生成的序列
     * @param input    玩家输入的字符序列
     * @return 存储比较的结果,返回值int数组的长度为2,其中,
     * 索引为0的位置用于存放完全猜对的字母个数(字符和位置均正确),
     * 索引为1的位置用于存放才对的字母个数(字符正确,但是位置不正确)
     */
    public static int[] check(char[] chs,char[] input) {
        int[] result=new int[2];
        for(int i=0;i<input.length;i++) {
            for(int j=0;j<chs.length;j++) {
                if(input[i]==chs[j]) {
                    result[1]++;
                    if(i==j) {
                        result[0]++;
                    }
                break;
                }
            }
        }
        return result;

    }


查看全部
weixin_43182674
weixin_43182674
2019/03/16 10:37
  • java
  • eclipse
  • 点赞
  • 收藏
  • 回答
    私信

5个回复