刚学java第一张图是我自己写的 第二张图是看b站黑马程序员课程写的 为啥我的返回值是false 搞不明白 还想问一句两个空的数组到底是不是一样的数组,感谢解惑
java中的两个空数组到底相同还是不相同
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- CSDN专家-天际的海浪 2022-04-12 02:06关注
两个空数组,按内容比较应该是相同的,你的代码问题是 arr1如果是空数组, arr1.length为0
for循环就一次也不执行, 直接return false;了
这样arr1和arr2都是空数组, 也直接return false;了
另外你的循环比较也不对,
你循环中 if (arr1[i]==arr2[i]) return true; 是只要两个数组有一位数据相同就 return true; 两个数组所有数据都不相同才 return false;
应该要像第二张图那样先比较两个数组长度是否一样,不一样直接return false;
两个数组长度一样才循环比较
并且要反过来用!=不等于比较 if (arr1[i]!=arr2[i]) return false; 只要两个数组有一位数据不相同 return false; 两个数组所有数据都相同 return true;
这样如果arr1和arr2都是空数组, 两个数组长度一样循环比较0次,也属于两个数组所有数据都相同的情况 也是return true;如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用