我使用Comparator
接口,使用下面的代码片段按升序排序对象:如何使用比较器进行排序?
final List<LinkModelSpi> documentLinks = this.documentLinksModelSpi.getDocumentLinks();
//Add This method for Sorting Document Link View Same Order. Now The application display same links order
// in catalogue administration edit drug window
if (Checks.checkNotNullAndNonEmpty(documentLinks)) {
if (this.documentLinksModelSpi.getDocumentLinks().iterator().next() instanceof DocumentLinkModelSpi) {
Collections.sort(documentLinks, (Comparator<? super LinkModelSpi>) new Comparator<DocumentLinkModelImpl>() {
@Override
public int compare(DocumentLinkModelImpl o1, DocumentLinkModelImpl o2) {
return o1.getResource().compareTo(o2.getResource());
}
});
} else {
Collections.sort(documentLinks, (Comparator<? super LinkModelSpi>) new Comparator<LinkModelImpl>() {
@Override
public int compare(LinkModelImpl o1, LinkModelImpl o2) {
return o1.getResource().compareTo(o2.getResource());
}
});
}
}
//Collections.reverse(documentLinks);
for (final LinkModelSpi documentLinkModelSpi : documentLinks) {
//noinspection unchecked
((DtoPresentationModelSpi<?, MDTO>) documentLinkModelSpi).addPropertyChangeListener(this);
}
最后的结果是这样的:
但我想对列表进行排序是这样的:
Wher不管情况如何,链接都会被排序。我怎样才能做到这一点?
'getResource'返回一个字符串吗? – Li357
@AndrewLi是的,它返回美国广播公司,www.google.com,Z.等 – uma