6-12 定义Rectangle矩形类和MyCompare类,实现矩形数组中的对象按面积从小到大输出。 分数 10 作者 邱颖豫 单位 许昌学院 定义Rectangle矩形类和MyCompare类,实现矩形数组中的对象按面积从小到大输出。
时间: 2024-02-25 22:57:31 浏览: 85
定义一个名为rectangle 的矩形类,其属性数据为矩形左上角和右上角的点的坐标能计算矩形的面积
5星 · 资源好评率100%
好的,我来为你解答。
首先是 Rectangle 矩形类的定义:
```java
public class Rectangle {
private double length;
private double width;
public Rectangle(double length, double width) {
this.length = length;
this.width = width;
}
public double getArea() {
return length * width;
}
}
```
接下来是 MyCompare 类的定义:
```java
import java.util.Comparator;
public class MyCompare implements Comparator<Rectangle> {
@Override
public int compare(Rectangle r1, Rectangle r2) {
double area1 = r1.getArea();
double area2 = r2.getArea();
if (area1 < area2) {
return -1;
} else if (area1 == area2) {
return 0;
} else {
return 1;
}
}
}
```
最后是主函数的实现:
```java
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
Rectangle[] rectangles = {
new Rectangle(4, 3),
new Rectangle(1, 5),
new Rectangle(6, 2),
new Rectangle(3, 5),
new Rectangle(2, 2)
};
Arrays.sort(rectangles, new MyCompare());
for (Rectangle r : rectangles) {
System.out.println(r.getArea());
}
}
}
```
输出结果如下:
```
4.0
6.0
10.0
15.0
20.0
```
这样,我们就实现了矩形数组中的对象按面积从小到大输出的功能。
阅读全文