使用数字对String ArrayList进行排序的最佳方法

Zac*_*ack 0 java sorting arraylist

我有一个以这种风格设置的数组列表......

  • 4只狗
  • 10只猫
  • 2只狗

我想对它进行排序,以便ArrayList按顺序排列......

  • 1只狗
  • 4只狗
  • 10只猫

如果不使用比较器或其他方法,通过取出数字(将字符串除以空格"?"),比较它们,并将排序后的结果放回ArrayList,最简单,最简单的方法是什么?如果您可以附加您的代码段,那将非常感激.

Ale*_*exR 5

最简单的方法是使用比较器:

Collections.sort(list, new Comparator<String>() {
    public void compare(String one, String two) {
         return getNumber(one) - getNumber(two);
    }
    private int getNumber(String str) {
        return Integer.parseInt(one.split(" ")[0]);
    }
}
Run Code Online (Sandbox Code Playgroud)

我真的不知道什么可以更简单.