Когда я пытаюсь отсортировать строковый массив / список, используя Comparator.naturalOrder()
, он не учитывает естественный порядок списка.Вот фрагмент кода, который я использовал:
List< String > ordered = Arrays.asList( "This", "is", "the", "natural" ,"order");
System.out.println( "Natural order" );
ordered.forEach( System.out::println );
ordered.sort(Comparator.naturalOrder( ));
System.out.println( "After ordering" );
for ( String string: ordered ) {
System.out.println( string );
}
Вывод:
Natural order
This
is
the
natural
order
After ordering
This
is
natural
order
the
Почему Comparator.naturalOrder()
ведет себя таким образом?То же самое происходит, когда я пытаюсь Comparator.reverseOrder()
.