Сортировка TreeMap StringComparer.Ordinal

234
08 марта 2018, 08:40

Сортировка TreeMap по ключу в Java, также как в C# я сортировал массив:

list.Sort(StringComparer.Ordinal);

Нужна именно сортировка StringComparer.Ordinal из C#.

Map<String, String> map = new TreeMap<>(//Что сюда вписать//);
Answer 1

Ничего не надо писать, сортировка по алфавиту стандартная для строк. Если не указана другая, то используется стандартная.

public static void main(String[] args) {
    TreeMap<String, String> map = new TreeMap<>();
    map.put("ivan","");
    map.put("Alexey","");
    map.put("Ivan","");
    map.put("alexey","");
    map.put("Mihail","");
    for (String s : map.keySet()) {
        System.out.println(s);
    }
}

OUTPUT:

Alexey
Ivan
Mihail
alexey
ivan

Если вам прямо принципиально что-то написать в скобках то можно написать так

TreeMap<String, String> map = new TreeMap<>(Comparator.naturalOrder());

либо так:

TreeMap<String, String> map = new TreeMap<>((o1, o2) -> o1.compareTo(o2));

либо ещё длиннее:

TreeMap<String, String> map = new TreeMap<>(new Comparator<String>() {
    @Override
    public int compare(String o1, String o2) {
        return o1.compareTo(o2);
    }
});

Во всех 4-х случаях результат будет одинаковый

READ ALSO
nbitcoin управление кошельком

nbitcoin управление кошельком

Стоит задача : управлять биткоин кошельком программно, средствами c#Долго гуглив, наткнулся на библиотеку NBitcoin, на сколько я понял, мы передаем...

228
waypointsне работает на Mac OS

waypointsне работает на Mac OS

Всем привет, использую плагин waypointsjsдля отслеживания скролла на странице

240
Проблема с условием в js

Проблема с условием в js

Сравниваю по одному и тому-же условию но разными способами и на выходе получаются совершенно разные результаты закомментированное условие...

256
Как получить JSON с помощью API key

Как получить JSON с помощью API key

Решил попрактиковаться в работе с JSON и решил в проекте использовать API OpenWeatherMapПри обращение к ссылке с JSON выбивает ошибку (из ошибки ясно,...

239