элементы замены в списке с другим

Как я заменяю элементы в a list с другим?

Например, я хочу все two стать one?

13
задан César 10 December 2011 в 15:54
поделиться

1 ответ

Можно использовать:

Collections.replaceAll(list, "two", "one");

Из документации:

Заменяет все вхождения одного указанного значения в списке другим. Более формально, заменяет на newVal каждый элемент e в списке такой, что (oldVal==null ? e==null : oldVal.equals(e)). (Этот метод не влияет на размер списка.)

Метод также возвращает boolean, чтобы показать, была ли произведена замена.

java.util.Collections имеет множество других статических методов, которые вы можете использовать в List (например, sort, binarySearch, shuffle и т.д.).


Сниппет

Ниже показано, как работает Collections.replaceAll; он также показывает, что вы можете заменить на/из null:

    List<String> list = Arrays.asList(
        "one", "two", "three", null, "two", null, "five"
    );
    System.out.println(list);
    // [one, two, three, null, two, null, five]

    Collections.replaceAll(list, "two", "one");
    System.out.println(list);
    // [one, one, three, null, one, null, five]

    Collections.replaceAll(list, "five", null);
    System.out.println(list);
    // [one, one, three, null, one, null, null]

    Collections.replaceAll(list, null, "none");
    System.out.println(list);
    // [one, one, three, none, one, none, none]
23
ответ дан 1 December 2019 в 22:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: