如何处理这种类型的数据进入数组- JAVA



在我的应用程序中,我有一个函数,给我的数据类型:

一个年份(int)和与该年份相关的字符串(年份可以关联更多字符串):

2016 - 1A2B3C"

2009 - "8DF56R"

2009 - 8E4I1J"

2013 - P6F2T8"

2009 - "4K6J5U"

我想为每个年份创建一个字符串数组,而不是对逐年递增的年份排序。这样的:

2009 - "8DF56R"8 e4i1j"4 k6j5u"

2013 - P6F2T8"

2016 - 1A2B3C"

年份应该是索引,我如何检索输出?

为新手问题抱歉,但我尝试了数组的数组,数组列表和地图,但我可能错过了一些东西

您应该像这样使用ListMap:

Map<Integer, List<String>> = new TreeMap<>();

,您可以填写与Integer键(日期)关联的List s。TreeMap根据键的自然顺序对它们进行排序(如果我没记错的话,默认是升序)。

您也可以创建一个自定义的Comparator,如果默认值是不满意的

另一个解决方案是创建一个包含您的信息(年份,字符串等)的类T并实现Comparable接口。方法compareTo(T)将比较年份。这样你可以处理更多的信息。例如,这种类型的对象可以插入到SortedSet中,也可以插入到与Collections一起使用的List中。

最新更新