m0_69140195 2022-04-10 19:31 采纳率: 100%
浏览 93
已结题

Java判断两个三角形是否

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));
        }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月21日
  • 已采纳回答 4月13日
  • 创建了问题 4月10日

悬赏问题

  • ¥15 求解 yolo算法问题
  • ¥15 虚拟机打包apk出现错误
  • ¥30 最小化遗憾贪心算法上界
  • ¥15 用visual studi code完成html页面
  • ¥15 聚类分析或者python进行数据分析
  • ¥15 逻辑谓词和消解原理的运用
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。