编写一个通用类 MinMaxFinder,它可以找到实现了 Comparable 接口的类型中最小值和最大值。要求: 泛型类型 T 需要实现 Comparable<T> 接口,并且限制 T 的多个边界。 支持通过可变参数传递多个元素。
时间: 2024-09-16 18:02:59 浏览: 87
java集合求和最大值最小值示例分享
5星 · 资源好评率100%
`MinMaxFinder`是一个通用类设计用于寻找实现了`Comparable`接口的对象集合中的最小值和最大值。它利用泛型`T`的特性,其中`T`需要满足`Comparable<T>`,这使得我们可以比较和操作同类型的对象。由于对T的一些边界限制未明确说明,这里假设我们关注的是基本数据类型或者已知其有比较规则的自定义类。
```java
import java.util.*; // 导入必要的集合库
public class MinMaxFinder<T extends Comparable<T>> {
private List<T> elements;
public MinMaxFinder(T... elements) {
this.elements = new ArrayList<>(Arrays.asList(elements));
}
public void addElement(T element) {
elements.add(element);
}
public T getMin() {
if (elements.isEmpty()) {
throw new IllegalArgumentException("List is empty");
}
return Collections.min(elements);
}
public T getMax() {
if (elements.isEmpty()) {
throw new IllegalArgumentException("List is empty");
}
return Collections.max(elements);
}
阅读全文