NameValuePair排序

Art*_*sov 5 java apache

如何NameValuePair通过键对这样的对象进行排序

List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(7)

nameValuePairs.add(new BasicNameValuePair("api_key", "1"));
nameValuePairs.add(new BasicNameValuePair("merchant", "4"));
nameValuePairs.add(new BasicNameValuePair("format", "json"));
nameValuePairs.add(new BasicNameValuePair("method", method));
nameValuePairs.add(new BasicNameValuePair("cid", "0"));
Run Code Online (Sandbox Code Playgroud)

min*_*das 13

通过比较器NameValuePair对密钥进行排序.就像是

Comparator<NameValuePair> comp = new Comparator<NameValuePair>() {        // solution than making method synchronized
    @Override
    public int compare(NameValuePair p1, NameValuePair p2) {
      return p1.getName().compareTo(p2.getName());
    }
}

// and then
Collections.sort(pairs, comp);
Run Code Online (Sandbox Code Playgroud)


小智 2

在 Java 8 中你可以使用

Collections.sort(pairs, Comparator.comparing(NameValuePair::getName));
Run Code Online (Sandbox Code Playgroud)