Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何克服按字母顺序排列整型键的freemarker树集?_Java_Spring_Hashmap_Freemarker_Treeset - Fatal编程技术网

Java 如何克服按字母顺序排列整型键的freemarker树集?

Java 如何克服按字母顺序排列整型键的freemarker树集?,java,spring,hashmap,freemarker,treeset,Java,Spring,Hashmap,Freemarker,Treeset,我有一棵树 字符串键实际上是一个int的字符串值,因为freemarker不允许int作为映射的键,而且这是一个排序映射,它将其排序如下: 1 10 11 12 2 3 4 5 6 7 8 9 有人知道如何绕过这个问题,让它按数字顺序打印吗 谢谢通过构造函数使用适当的比较器构建地图 (或者TreeSet,如果这是您真正的意思;您同时提到集合和映射。)通过构造函数使用适当的比较器构建映射 (或者TreeSet,如果这是您真正的意思;您同时提到集合和映射。)String在内部强加了一个via 按字典

我有一棵树

字符串键实际上是一个int的字符串值,因为freemarker不允许int作为映射的键,而且这是一个排序映射,它将其排序如下:

1
10
11
12
2
3
4
5
6
7
8
9

有人知道如何绕过这个问题,让它按数字顺序打印吗


谢谢

通过构造函数使用适当的比较器构建地图


(或者TreeSet,如果这是您真正的意思;您同时提到集合和映射。)

通过构造函数使用适当的比较器构建映射


(或者TreeSet,如果这是您真正的意思;您同时提到集合和映射。)

String
在内部强加了一个via

按字典顺序比较两个字符串

如果您不想这样,考虑指定一个自定义项,例如

final Map=new TreeMap(new Comparator(){
公共整数比较(最终字符串a、最终字符串b){
返回Integer.valueOf(a).compareTo(Integer.valueOf(b));
}
});

字符串
在内部强制使用过孔

按字典顺序比较两个字符串

如果您不想这样,考虑指定一个自定义项,例如

final Map=new TreeMap(new Comparator(){
公共整数比较(最终字符串a、最终字符串b){
返回Integer.valueOf(a).compareTo(Integer.valueOf(b));
}
});
final Map<String, ...> map = new TreeMap<String, ...>(new Comparator<String>() {

  public int compare(final String a, final String b) {
    return Integer.valueOf(a).compareTo(Integer.valueOf(b));
  }
});