Map sorts automatically
我正在使用地图,我需要它们保持对象被放入它们的顺序,但它们会根据自己的意愿对自己进行排序。我该如何停止或是有其他收藏?我通过使用两个数组列表来解决这个问题,但我想用一个集合来解决这个问题。
1 2 3 4 5 6 7 8 9 10 11 12
| import java.util.HashMap;
import java.util.Map;
public class Test {
public static void main (String[] args ) {
Map <String, String > map = new HashMap <>();
map. put("b", "Item One");
map. put("a", "Item Two");
map. put("c", "Item Three");
System. out. println(map );
}
} |
- 请参阅前面的问题stackoverflow.com/questions/683518/&hellip;
- 使用LinkedHashMap保留插入顺序。
- 他们没有自我分类。这是作为映射和集基础的哈希函数的属性。如果要保留插入顺序,请查看LinkedHashMap。
- 另请参见stackoverflow.com/questions/21974361/&hellip;
这是一个散列图,因此元素按散列值"排序"。你可以用Linkedhashmap
把一个映射想象成一个由键索引的数组。与其说是"排序",不如说是将值放在指定的键上。
如果您想跟踪顺序,我建议您创建一个元组列表(或存储两个字段的任何其他对象),并将每个数据集附加到该列表中。