7
Obecnie używam następujących 2 fragmentów kodu w 2 różnych miejscach, aby utworzyć posortowaną, niezmienną listę.Case Niewrażliwe sortowanie przy użyciu Google Guava
return Ordering.natural().immutableSortedCopy(iterable);
i
return Ordering.usingToString().immutableSortedCopy(machines);
Jednak to sprawia, że 'zamawiania' przypadek wrażliwy.
Jak używać Apis guava zrobić CASE- niewrażliwy klasyfikowane niezmienny listę?
ok to wydaje się działać przy użyciu Ordering.natural jednak mam inne miejsce, w którym używam Ordering.usingToString(). ImmutableSortedCopy(), jak to będzie działać w tym przypadku? – pdeva
'od' przyjmuje dowolny komparator. W przypadku 'toString' trzeba przed porównaniem utworzyć własny komparator i zrobić coś w stylu' toString(). DoLowerCase() '. Twoje zdrowie! –
W przypadku zamiennika 'usingToString()' skomponowałbym 'Ordering' za pomocą' Functions.toStringFunction() ', np. 'return Ordering.from (String.CASE_INSENSITIVE_ORDER) .onResultOf (Functions.toStringFunction()). immutableSortedCopy (iterable);' –