用Java语言写一个同时有泛型类的定义和使用和Collections类的使用的程序例子
时间: 2024-03-12 12:48:44 浏览: 123
好的,下面是Java语言的同时有泛型类的定义和使用以及Collections类的使用的程序例子:
```java
import java.util.ArrayList;
import java.util.Collections;
public class MyExample<T extends Comparable<T>> {
private ArrayList<T> list;
public MyExample() {
list = new ArrayList<>();
}
public void addData(T data) {
list.add(data);
}
public void sortData() {
Collections.sort(list);
}
public T getFirstData() {
return list.get(0);
}
public static void main(String[] args) {
MyExample<String> stringExample = new MyExample<>();
stringExample.addData("c");
stringExample.addData("a");
stringExample.addData("d");
stringExample.addData("b");
System.out.println("排序前:" + stringExample.list); // 输出:排序前:[c, a, d, b]
stringExample.sortData();
System.out.println("排序后:" + stringExample.list); // 输出:排序后:[a, b, c, d]
System.out.println("第一个元素:" + stringExample.getFirstData()); // 输出:第一个元素:a
MyExample<Integer> intExample = new MyExample<>();
intExample.addData(3);
intExample.addData(1);
intExample.addData(4);
intExample.addData(2);
System.out.println("排序前:" + intExample.list); // 输出:排序前:[3, 1, 4, 2]
intExample.sortData();
System.out.println("排序后:" + intExample.list); // 输出:排序后:[1, 2, 3, 4]
System.out.println("第一个元素:" + intExample.getFirstData()); // 输出:第一个元素:1
}
}
```
这个程序中同时定义了一个泛型类 `MyExample` 和使用了 `Collections` 类的 `sort` 方法对元素进行排序。 `MyExample` 类是一个可以存储任意类型元素并进行排序的类,其中泛型类型 `T` 需要实现 `Comparable` 接口以支持排序。程序中分别创建了一个 `MyExample` 类型的对象 `stringExample` 和 `intExample`,并对它们进行了数据添加、排序和获取第一个元素的操作。
阅读全文