
3个回答
展开全部
看错了 是二维数组 改下
boolean arrayEquals(int[][] a, int[][] b) {
if (a.length!=b.length) return false;
for (int i=0; i<a.length; i++) {
if (a[i].length!=b[i].length) return false;
for (int j=0; j<a[i].length; i++)
if (a[i][j]!=b[i][j]) return false;
}
return true;
}
以上是基本类型的int char byte long float之类都这么比
如果是Object的话就改成
boolean arrayEquals(Object[][] a, Object[][] b) {
if (a.length!=b.length) return false;
for (int i=0; i<a.length; i++) {
if (a[i].length!=b[i].length) return false;
for (int j=0; j<a[i].length; i++)
if (!a[i][j].equals(b[i][j])) return false;
}
return true;
}
当然那个Object应该实现了equals方法 如果Object是你自定义的请实现自己的equals方法
另外BS楼主直接要代码还很凶的行径
boolean arrayEquals(int[][] a, int[][] b) {
if (a.length!=b.length) return false;
for (int i=0; i<a.length; i++) {
if (a[i].length!=b[i].length) return false;
for (int j=0; j<a[i].length; i++)
if (a[i][j]!=b[i][j]) return false;
}
return true;
}
以上是基本类型的int char byte long float之类都这么比
如果是Object的话就改成
boolean arrayEquals(Object[][] a, Object[][] b) {
if (a.length!=b.length) return false;
for (int i=0; i<a.length; i++) {
if (a[i].length!=b[i].length) return false;
for (int j=0; j<a[i].length; i++)
if (!a[i][j].equals(b[i][j])) return false;
}
return true;
}
当然那个Object应该实现了equals方法 如果Object是你自定义的请实现自己的equals方法
另外BS楼主直接要代码还很凶的行径
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//T为除基本类型以为的所有类型,T必须覆写 equals()方法.此方法应用在JDK1.5及以上:
public static <T> boolean deepEquals(T[][] a,T[][] b){
try{
for(int i=0; i<a.length; i++)
for(int k=0; k<a[i].length; k++)
if(!a[i][k].equals(b[i][k]))return false;
return true;
}catch(Exception e){}
return false;
}
//基本类型处理方法,这里是int类的,其它基本类型方法类同
public static boolean deepEquals(int[][] a,int[][] b){
try{
for(int i=0; i<a.length; i++)
for(int j=0; j<a[i].length; j++)
if(a[i][j]!=b[i][j])return false;
return true;
}catch(Exception e){}
return false;
}
public static <T> boolean deepEquals(T[][] a,T[][] b){
try{
for(int i=0; i<a.length; i++)
for(int k=0; k<a[i].length; k++)
if(!a[i][k].equals(b[i][k]))return false;
return true;
}catch(Exception e){}
return false;
}
//基本类型处理方法,这里是int类的,其它基本类型方法类同
public static boolean deepEquals(int[][] a,int[][] b){
try{
for(int i=0; i<a.length; i++)
for(int j=0; j<a[i].length; j++)
if(a[i][j]!=b[i][j])return false;
return true;
}catch(Exception e){}
return false;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
写两个循环,
出现不相当就
return false,
循环完毕就
return true
出现不相当就
return false,
循环完毕就
return true
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询