我正在尝试从我的config.yml文件中检索一个Map
,但是找不到一种方法来保持先前设置的键顺序。
classes:
beginner: 1000
proplayer: 2000
admin: 5000
[我知道classes
的键集给我一个Map
,但顺序不如显示的顺序。
我需要按顺序排列,因为这是播放器将升级到的类的顺序。因此,如果他是初学者,则需要升级到Proplayer,依此类推。
我需要某种方法来解决它,因此我可以使初学者位于索引0处,以便猜测玩家将移至下一个类,在这种情况下,玩家将进入proplayer(索引1),但是我也需要检索该类的int
值,以便向玩家收取他要移至的类的金额。
[Map
的实现不关心条目顺序。
因此,在使用该classes
层次结构轻松检索每个值时,我将创建一个并行列表以跟踪其顺序。
classes:
order:
- beginner
- proplayer
- admin
cost:
beginner: 1000
proplayer: 2000
admin: 5000
List<String> orderedList = data.getStringList("classes.order");
String item = orderedList.get(0);
int cost = data.getInt("classes.cost." + item);
简而言之,使用列表?
classes:
- beginner: 1000
- proplayer: 2000
- admin: 5000
阅读:我认为已经在这里回答了: