【发布时间】:2014-10-28 17:29:12
【问题描述】:
我已经被这件事难住了一段时间。我有一个字符串数组,所有这些字符串都包含一些数值,我需要提取这些数值并用于比较以便对数组进行排序。我尝试过使用带有比较器的内置方法排序,但没有成功。
如果有人能给我一点见解或指出正确的方向,将不胜感激。
该数组包含格式为:“NAME 已工作 x 小时”的字符串
我的意图是提取数字并根据整数的值进行排序,同时仍保持与名称的关系。
public static <T> void sort(T[] a, Comparator<? super T> c)
【问题讨论】:
-
你能发布字符串数组吗?以及你想要的结果
-
关于在所有语言中实现“自然排序”有很多答案...
-
@Rod_Algonquin - 他有一个字符串数组,例如
{"10","2","1"}。字符串自然排序的问题(默认Arrays.sort(stringArray)是他会得到{"1","10","2"}的答案。他需要{"1","2","10"}(整数排序)。 -
@TheLostMind - 我同意,我认为这是问题所在。但是,我认为答案是将字符串解析为自定义对象,然后对它们进行排序。我想不出直接处理字符串有什么好处,特别是如果你的对象有一个等效的 toString 方法。
标签: java arrays string sorting int