如果所有“键”都将链接到getter方法,则可以在函数中使用键/ getter的静态映射:
注意:我们将不得不使用原始类型,Comparable
因为我们不能使用不同的类型Functions<S3ObjectSummary,Comparable<T>>
(即使所有的获取方法都将返回Comparable<X>
对象,X
也会有所不同)
Map<String, Function<S3ObjectSummary, Comparable>> map = new HashMap<>();map.put("key", s3 -> s3.getKey());map.put("modified", s3 -> s3.getModified());// other entries然后使用:
objectSummaryList.sort(Comparator.comparing(map.get(compareByKey)));



