Java实现 不同list 怎么使用同一个导出pdf公共方法
时间: 2024-09-22 17:03:16 浏览: 33
在Java中,为了能让不同类型的List(如ArrayList、LinkedList等)通过同一个导出PDF的方法,可以利用泛型(Generics)和Java的集合框架。这里是一个简单的例子:
首先,创建一个方法,该方法接受一个`List`作为参数,并假设这个List有一个共同的行为,例如它们都实现了某个接口(比如`Listable`),该接口包含一个用于生成PDF的抽象方法`exportToPdf()`:
```java
public abstract class PDFExportUtil {
public void exportListToPdf(List<? extends Listable> list) {
for (Listable item : list) {
item.exportToPdf();
}
}
}
interface Listable {
void exportToPdf();
}
```
然后,让ArrayList、LinkedList或其他List的子类实现`Listable`接口:
```java
class ArrayListExample implements Listable {
// 实现exportToPdf()方法,将列表内容导出到PDF
}
class LinkedListExample implements Listable {
// 实现exportToPdf()方法,将链表内容导出到PDF
}
```
最后,在需要的地方,你可以这样使用这个通用方法:
```java
PDFExportUtil util = new PDFExportUtil();
ArrayListExample list1 = new ArrayListExample();
LinkedListExample list2 = new LinkedListExample();
util.exportListToPdf(Arrays.asList(list1, list2));
```
在这个例子中,`exportListToPdf()`方法不管传入的是什么样的List(只要它能通过`Listable`接口访问`exportToPdf()`方法),都能统一处理导出PDF的操作。