3

我想对具有节点类型的 ArrayList 进行排序,如下所示:

 [[country1: null], [name2: null], [city3: null], [region4: null], [name6: null]]

要获取节点名称的值,我使用函数 getNodeName() 所以

 ArrayNode.get(0).getNodeName()  // return country1

我正在研究 collection.sort,但我不知道我会怎么做,提前谢谢你。

4

3 回答 3

3

我想你想要 java.util.Comparator。您可以将其与 Collections.sort 一起使用

于 2012-05-23T21:21:53.560 回答
3

创建一个Comparator按节点名称排序的,然后Collections.sort(list,comparator)

于 2012-05-23T21:21:54.660 回答
3

使用Comparator对象定义比较逻辑。

像这样的东西:

ArrayList<Node> nodes;
        Collections.sort(nodes, new Comparator<Node>() {
            @Override
            public int compare(Node o1, Node o2) {
                return o1.getNodeName().compareTo(o2.getNodeName());
            }
        });
于 2012-05-23T21:29:12.270 回答