我有一个 TreeMap,我按键反向排序,并试图循环输出值,但 NavigableSet 没有entrySet()
作为方法,这是我找到的所有示例。
我的 Java 非常新手,所以我现在的知识有限,无法修改我在示例中看到的代码。
<%@page
import="java.util.Iterator,
java.util.Map,
java.util.TreeMap,
java.util.NavigableSet,
com.day.cq.wcm.api.PageFilter"
%>
TreeMap<String, String> news = new TreeMap<String, String>();
String listroot = properties.get("listRoot", currentPage.getPath());
Page rootPage = pageManager.getPage(listroot);
if (rootPage != null) {
Iterator<Page> children = rootPage.listChildren(new PageFilter(request));
while (children.hasNext()) {
Page child = children.next();
String title = child.getTitle(); //value
String url = child.getPath(); //value
String dcreated = child.getProperties().get("jcr:created",""); //key
news.put( dcreated, title + "::" + url );
}
NavigableSet nset = news.descendingKeySet(); //Reverse order the entries
for( String value : nset.values() ) { //I know this is incorrect.
out.println( value + "<br>");
}
}
%>
我确信有一种更有效的方法可以做到这一点,但现在这是我能想到的。