Object类是一切类的基类,查阅object类文档,完成对三角形全等的判断(复写object类中的equals()方法),并在主函数中实现两种三角形是否全等的比较。
1条回答 默认 最新
- 溪风沐雪 2022-04-11 13:00关注
实现思路是通过分别判断两个三角形的最长边、最短边以及边长平均值是否相等来判定两个三角形是否全等。
package com.example.impl; public class Triangle { private double edge1; private double edge2; private double edge3; public Triangle(double edge1, double edge2, double edge3){ this.edge1 = edge1; this.edge2 = edge2; this.edge3 = edge3; } public boolean equals(Triangle triangle){ return this.getMinEdge()==triangle.getMinEdge() && this.getMaxEdge()==triangle.getMaxEdge() && this.getAverageEdge()==triangle.getAverageEdge(); } public double getMinEdge(){ double minEdge = this.edge1; if(this.edge2<minEdge){ minEdge = this.edge2; if(this.edge3<minEdge){ minEdge = this.edge3; } }else if(this.edge3<minEdge){ minEdge = this.edge3; } return minEdge; } public double getMaxEdge(){ double maxEdge = this.edge1; if(this.edge2>maxEdge){ maxEdge = this.edge2; if(this.edge3>maxEdge){ maxEdge = this.edge3; } }else if(this.edge3>maxEdge){ maxEdge = this.edge3; } return maxEdge; } public double getAverageEdge(){ return (this.edge1+this.edge2+this.edge3)/2; } public double getEdge1() { return edge1; } public void setEdge1(double edge1) { this.edge1 = edge1; } public double getEdge2() { return edge2; } public void setEdge2(double edge2) { this.edge2 = edge2; } public double getEdge3() { return edge3; } public void setEdge3(double edge3) { this.edge3 = edge3; } public static void main(String[] args){ Triangle triangle1 = new Triangle(3.0,4.0,5.0); Triangle triangle2 = new Triangle(4.0,5.0,3.0); Triangle triangle3 = new Triangle(4.0,4.0,4.0); System.out.println(triangle1.equals(triangle2)); System.out.println(triangle1.equals(triangle3)); System.out.println(triangle2.equals(triangle3)); } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用