ckeditor две текстовые области для текста, перетекающего из одного текстового поля в другое, когда первый текстовый ящик заполнен

Проблема с вашим подходом заключается в том, что вы сопоставляете количество символов с символами. Что есть: В случае

val str = abcabca

При перемещении строки str a имеет счет 3, b имеет счет 2, а c имеет счет 2 при создании карты (с использованием groupBy) он поместит все символы в значение, имеющее тот же самый ключ.

Map(3->aaa, 2->bc)

Именно по этой причине вы получаете такой вывод для своей программы.

Как вы можете видеть в определении функции groupBy:

def groupBy [K] (f: (A) ⇒ K): immutable.Map [K, Repr] Разделяет эту обходную коллекцию на карту пересекающихся коллекций в соответствии с некоторой дискриминаторной функцией. Примечание. Этот метод не переопределяется представлениями. Это означает, что при применении к виду он всегда будет заставлять представление и возвращать новую доступную коллекцию. K - тип ключей, возвращаемых функцией дискриминатора. f функция дискриминатора. возвращает карту из ключей в пересекающиеся коллекции, так что имеет место следующий инвариант: (xs groupBy f) (k) = xs filter (x => f (x) == k) То есть каждый ключ k связан с обходной коллекцией из тех элементов x, для которых f (x) равно k.

GroupBy возвращает карту, которая содержит следующий инвариант.

(xs groupBy f)(k) = xs filter (x => f(x) == k)

Это означает, что он возвращает коллекцию элементов, для которых ключ такой же.

0
задан pratik hirpara 19 January 2019 в 10:34
поделиться

0 ответов

Другие вопросы по тегам:

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