Описание тега immutable-collections

Неизменяемые коллекции - это библиотека, содержащая неизменяемые структуры данных, созданные Microsoft для.NET.
1 ответ

Как получить измененное дерево из неизменного дерева, максимизируя повторное использование узлов

У меня есть данные древовидной структуры, как это: [{ id: 54, name:123, children: [{ id: 54, name:123, children: [{ id: 154, name:1234, children []... }] }] }, { ... }] Я использую Angular 2. Насколько я знаю, обнаружение изменений активируется всяк…
3 ответа

Добавление в неизменный HashSet

Извините, ребята, я недавно видел пример в "Программирование в Scala", 2-е издание на стр. 685, который показался мне странным: var hashSet: Set[C] = new collection.immutable.HashSet hashSet += elem1 Как можно добавить что-то неизменное в коллекцию?…
0 ответов

Как использовать ImmutableList<> вместо List <> в Entity Framework 6

В моем проекте мы используем Entity Framework 6 и пакет nuget типов Microsoft System.Collections.Immutable. Мы стремимся сделать запрос в базу данных с EF, и возвращаемые данные будут неизменными по умолчанию. Так как у нас есть one-to-many отношени…
1 ответ

Удалить все с карты в F#

C#: В C# у меня есть что-то вроде этого: IImmutableDictionary&lt;string, string&gt; map = new Dictionary&lt;string, string&gt; { {"K1", "V1"}, {"K2", "V2"}, {"K3", "V3"}, }.ToImmutableDictionary(); IEnumerable&lt;string&gt; keys = new[] {"K1,K3"}; m…
26 янв '18 в 10:33
1 ответ

Неизменная карта дерева для Java?

Я ищу реализацию неизменяемой древовидной карты в Java, которая позволяет модифицировать стиль копирования при записи с совместным использованием идентичных частей. Итак, по сути, именно то, что ImmutableJS делает для JavaScript, только для Java. Ес…
0 ответов

Как получить первый ключ и последний ключ неизменяемого отсортированного словаря?

Интерфейс ImmutableSortedDictionary отличается от SortedDictionary, Например, я не могу использовать sortedDictionary.Keys.Last() чтобы получить последний ключ. Как это сделать, а также получить первый ключ?
20 май '16 в 20:27
0 ответов

Заменить C# System.Numerics.Vector на изменяемый?

Я рассматриваю возможность использования System.Numerics.Vector в моем C# проекте, который включает в себя множество математических вычислений. Главное, что меня привлекает этот пакет - это аппаратное ускорение. Тем не менее, структура данных называ…
1 ответ

Можно ли написать неизменный двусвязный список?

Я чувствую себя немного глупо, когда спрашиваю об этом, но в настоящее время я изучаю функциональное программирование и выполнил упражнение по созданию односвязных списков, и это только заставило меня задуматься, возможно ли вообще создать неизменны…
2 ответа

ImmutableHashSet .Contains возвращает false

У меня есть список (если быть точным ImmutableHashSet&lt;ListItem&gt; из System.Collections.Immutable) базовых элементов и попробуйте вызвать следующий код _baseList.Contains(derivedItem) но это возвращает ложь. Несмотря на то, что все следующие стр…
04 июн '15 в 13:17
1 ответ

Почему ImmutableList имеет сложность O(logN) в своем методе добавления?

Я думаю, что создан новый ImmutableList из N+1 элементов. Таким образом, его сложность должна быть O(N).
18 май '16 в 15:37
0 ответов

Какие характеристики производительности для неизменяемых коллекций в котлине?

Вот таблица для описания производительности для коллекции в Scala. Но какими характеристиками обладает коллекция kotlin?
3 ответа

JAVA: неизменный набор в виде списка

В настоящее время мне возвращают ImmutableSet из вызова функции (getFeatures()), и из-за структуры остальной части моего кода, которая будет выполняться позже, было бы намного проще изменить это на List. Я попытался разыграть его, который выдает иск…
10 июн '15 в 15:56
3 ответа

Сделать список / коллекцию объектов с открытыми свойствами доступными только для чтения

У меня есть следующая проблема. Допустим, есть общедоступный Class1, определенный следующим образом: public class Class1 { public string pr1 { get; set; } public string pr2 { get; set; } public Class1() { } } Мне не разрешено изменять определение кл…
30 апр '15 в 06:01
2 ответа

Неизменные и коллекции в JavaScript

Я пытаюсь понять, как использовать Immutables в JavaScript/TypeScript, не тратя на это целый день. Я не совсем готов к погружению в Immutable.js, потому что он, кажется, оставляет вас в сухом и безопасном состоянии. Итак, давайте рассмотрим пример, …
15 фев '17 в 23:49
1 ответ

Почему перечислитель ImmutableList<T>намного медленнее, чем List<T>

У меня есть кусок кода, который часто перебирает небольшой список. Учитывая, что список никогда не меняется во время выполнения, я заменил реализацию на ImmutableList&lt;T&gt;, Если посмотреть на трассировку производительности с помощью dotTrace, он…
20 фев '15 в 04:01
1 ответ

Самый идиоматичный способ перебора и добавления функционально

Я использую Гремлин, чтобы перебрать GraphTraversal Объект и получить вершины. Вот с чем я работаю: def getVertexSet(vIter: GraphTraversal[Vertex, Vertex]): Set[Vertex] = { val s = mutable.HashSet.empty[Vertex] vIter.forEachRemaining(v =&gt; s.add(v…
9 ответов

Лучше ли вернуть ImmutableMap или карту?

Допустим, я пишу метод, который должен возвращать карту. Например: public Map&lt;String, Integer&gt; foo() { return new HashMap&lt;String, Integer&gt;(); } Подумав немного, я решил, что нет причин изменять эту Карту после ее создания. Таким образом,…
28 июн '16 в 23:30
3 ответа

ReadonlyCollection, являются ли объекты неизменяемыми?

Я пытаюсь использовать ReadOnlyCollection, чтобы сделать объект неизменным, я хочу, чтобы свойство объекта было неизменным. public ReadOnlyCollection&lt;FooObject&gt; MyReadOnlyList { get { return new ReadOnlyCollection&lt;FooObject&gt;(_myDataList)…
2 ответа

C# возвращает ссылки на словарь безопасно

Я рассматриваю три подхода для возврата ссылок на внутренние экземпляры словаря (C#) в отношении безопасности кода и влияния на читаемость кода / визуально для проекта, над которым я работаю. Я сузил это до следующих трех подходов, но я открыт для л…
02 сен '16 в 01:35
4 ответа

Разница между ImmutableArray<T> и ImmutableList<T>

Какая разница между ImmutableArray&lt;T&gt; а также ImmutableList&lt;T&gt;и где было бы лучше использовать каждый?
12 мар '14 в 11:18