-->
当前位置:首页 > 题库 > 正文内容

单选题:阅读下面Java程序并选择填空。

Luz4年前 (2021-12-25)题库514
阅读下面Java程序,请补充一个equals()方法,覆盖从父类继承来的方法。

public class Matrix {
private int x;
private int y;
private double[][] v;
public Matrix(int m,int n){
if(m>=2&&m<=10) x=m;
else x=2;
if(n>=2&&n<=10) y=n;
else y=2;
v=new double[x][y];
for(int i=0;i<x;i++){
for(int j=0;j<y;j++){
v[i][j]=0;
}
}
}
public String toString(){
String str="";
for(int i=0;i<x;i++){
for(int j=0;j<y;j++){
str=str+v[i][j]+"\t";
}
str=str+"\n";
}
return str;
}
......
//
请重写继承来的equals方法
//
}




A.
public boolean equals(Object obj){
Matrix o=(Matrix)obj;
if(this.x!=o.x||this.y!=o.y) return false;
for(int i=0;i<x;i++){
for(int j=0;j<y;j++){
if(this.v[i][j]!=o.v[i][j]) return false;
}
}
return true;
}

B.
public boolean equals(Matrix obj){
if(this.x!=o.x||this.y!=o.y) return false;
for(int i=0;i<x;i++){
for(int j=0;j<y;j++){
if(this.v[i][j]!=o.v[i][j]) return false;
}
}
return true;
}

C.
public boolean equals(Object obj){
if(this==obj) return true;
if(obj==null) return false;
if(this.getClass()!=obj.getClass()) return false;
Matrix o=(Matrix)obj;
if(this.x!=o.x||this.y!=o.y) return false;
for(int i=0;i<x;i++){
for(int j=0;j<y;j++){
if(this.v[i][j]!=o.v[i][j]) return false;
}
}
return true;
}

D.
public boolean equals(Matrix obj){
if(this==obj) return true;
if(obj==null) return false;
if(this.x!=o.x||this.y!=o.y) return false;
for(int i=0;i<x;i++){
for(int j=0;j<y;j++){
if(this.v[i][j]!=o.v[i][j]) return false;
}
}
return true;
}



答案:C

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。