Java基础 为什么输出true呢?



```java
package com.itheima.create;

public class MethodDemo7 {
    public static void main(String[] args) {
        int[] temp1 = {1, 2, 3};
        int[] temp2 = {1, 5, 3};
        System.out.println(sanme(temp1, temp2));
    }

    public static boolean sanme(int[] arr1, int[] arr2) {
        if (arr1.length == arr2.length) {
            for (int i = 0; i < arr1.length; i++) {
                if (arr1[i] == arr2[i]) {
                    return true;
                }
            }
        }
        return false;
    }
}


```

两个数组长度相同,两个数组的第一个值为相同。不满足条件返回true?

可以用不等条件打破循环

package com.itheima.create;
public class MethodDemo7 {
    public static void main(String[] args) {
        int[] temp1 = {1, 2, 3};
        int[] temp2 = {1, 5, 3};
        System.out.println(sanme(temp1, temp2));
    }
    public static boolean sanme(int[] arr1, int[] arr2) {
        if (arr1.length == arr2.length) {
            for (int i = 0; i < arr1.length; i++) {
                if (arr1[i] != arr2[i]) {
                    return false;
                }
            }
          return true;
        }
        return false;
    }
}

跟着代码读,第一次for循环,两个数组都取下标为0的元素,这两个数组下标为0时,取到的值都是1,1==1?-> 结果为true,然后你用的return,就结束循环了,当然返回结果就是true了呀

等于就是你这个方法是先判断数组长度是不是一样的,一样的就进入循环判断相同下标是不是一样的,一样的就返回true结束循环