Подтвердить что ты не робот

Scala сборник блок-схем

Есть хорошая блок-схема (взята из здесь) для выбора конкретного контейнера в С++:

container-flowchart

Есть ли что-то подобное для коллекций Scala? Я все еще несколько перегружен вариантами.

4b9b3361

Ответ 1

Мне не известны такие блок-схемы для Scala, но я думаю, что это было бы полезно. Я сделал один для вас - увеличенное изображение здесь.

Обратите внимание, что есть некоторая дополнительная сложность, поскольку Scala имеет больше наборов, и есть как пакет mutable, так и immutable. По возможности я добавил обе альтернативы прямоугольнику.

Я старался как можно больше следовать диаграмме потока С++ STL, но я думал, что нижняя левая часть слишком усложняет ситуацию, поэтому я немного изменил поток.

EDIT: исправлены некоторые опечатки.

РЕДАКТИРОВАТЬ: Как предложил Тревис, обратите внимание, что в большинстве ситуаций вам нужно всего лишь выбрать между Map, Set, List, ArrayBuffer или Vector.

  • Если вам нужен поиск по ключевым словам, используйте Map
  • если вам нужно проверить наличие элементов, используйте Set
  • если вам нужно хранить элементы и перемещать их, используйте List или ArrayBuffer
  • если вам не нужна постоянная коллекция, но произвольный доступ действительно важен, используйте ArrayBuffer
  • если вам нужен относительно быстрый случайный доступ и постоянные последовательности, используйте Vector

Если это не помогает, и у вас есть более экзотический случай использования, используйте эту диаграмму.

введите описание изображения здесь