java利用compareTo方法判斷兩圓大小

public class TestComparableCircle { public static void main(String [] args) { ComparableCircle circle1 = new ComparableCircle(3); ComparableCircle circle2 = new ComparableCircle(4); int ret=circle1.compareTo(circle2); if(1==ret) { System.out.println("circle1>circle2"); } else if(-1==ret) { System.out.println("circle1<circle2"); } else { System.out.println("circle1=circle2"); } } } class ComparableCircle extends Circle { public ComparableCircle() { } public ComparableCircle(double radius) { super(radius); } @Override public int compareTo(ComparableCircle o) { if (super.getArea() > o.getArea()) //用已知的對象的面積和 o 進行比較 { return 1; } else if (super.getArea() < o.getArea()) { return -1; } else return 0; } } class Circle { private double radius; public Circle() { } public Circle(double radius) { this.radius=radius; } public double getRadius() { return radius; } public void setRadius(double radius) { this.radius = radius; } public double getArea() { return Math.PI * radius * radius; } }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章