如何在Java中对包含多个句点/点的字符串进行排序?
我想对几个字符串进行排序:如何在Java中对包含多个句点/点的字符串进行排序?,java,string,sorting,arraylist,alphabetical,Java,String,Sorting,Arraylist,Alphabetical,我想对几个字符串进行排序: RANDOM.XY AAA.BBB.CC AAA.BBB RANDOM.XY.Z AAA.BBB.CC.D 排序顺序应为: AAA.BBB AAA.BBB.CC AAA.BBB.CC.D RANDOM.XY RANDOM.XY.Z 我将它们放在ArrayList列表中,并使用内置的排序方法: Collections.sort(list); 然而,我从排序中得到的是: AAA.BBB.CC.D AAA.BBB.CC AAA.BBB R
RANDOM.XY
AAA.BBB.CC
AAA.BBB
RANDOM.XY.Z
AAA.BBB.CC.D
排序顺序应为:
AAA.BBB
AAA.BBB.CC
AAA.BBB.CC.D
RANDOM.XY
RANDOM.XY.Z
我将它们放在ArrayList列表中,并使用内置的排序方法:
Collections.sort(list);
然而,我从排序中得到的是:
AAA.BBB.CC.D
AAA.BBB.CC
AAA.BBB
RANDOM.XY.Z
RANDOM.XY
我该怎么做呢?您可以创建包含原始字符串和不包含点的字符串的自定义类。然后,您可以实现Comparator接口并比较不包含点的字符串。您应该实现自定义比较器。查看并创建一些看起来很像的东西(或者可能是更简单的东西,只调用该方法。我无法重现您描述的行为()。@dasblinkenlight我怀疑他混淆了他想要什么和他得到什么。