我有一个字符串列表(List<String>
):
LAT-3-45.3256435634
LNG-2-43.542352345654
LAT-1-45.32564356345
LNG-4-43.542352345654
LAT-1-45.325643563456
LNG-2-43.54235234565
LAT-3-45.325643563456
LNG-5-4.5423523456
etc etc.
我想按整数值排序(第一个数字,LAT或LNG后的第二个元素,减号之间)。
预期结果:
LAT-1-45.32564356345
LNG-1-43.54235234546654
LAT-2-45.325643563984
LNG-2-43.542352345654
LAT-3-45.32564356346756
LNG-3-4.5423523456676
LAT-4-45.325646753563456
LNG-4-4.54765623523456
我该怎么做?
1条答案
按热度按时间tgabmvqs1#
您可以为
List
上的sort()
方法提供一个比较方法。每次比较都调用此方法。在本例中,我们需要解析比较中的每个String
,以便比较int值。这可以通过类似下面的东西来完成。我添加了一个逻辑,如果两个
int
值相等,我们将基于LAT
和LNG
文本进行排序:在这个完整的测试程序中可以看到一个使用示例: