Zefirot
@Zefirot

Как перемешать словарь объектов?

Думал есть какой-то метод типа .Suffle() но нет, подскажите как перемешать словарь типа Dictionary чтобы пары сохранились но порядок был другой?
int не по порядку, набор разных не повторяющихся цифр (1,5,7,8,15,18 и т.д.)...
  • Вопрос задан
  • 241 просмотр
Решения вопроса 2
@AndromedaStar
.Net - monkey
Random rand = new Random();
var shuffledDictionary = originalDictionary.OrderBy(x => rand.Next()).ToDictionary(item => item.Key, item => item.Value);
Ответ написан
Krypt
@Krypt
Dictionary не хранит порядок элементов. Тот факт, что они возвращаются в каком-то одинаковом порядке при энумерации - это исключительно удача. Кроме того, порядок может меняться в зависимости от версии и платформы.

Вам нужен какой-то другой способ хранения данных. Например - `System.Collections.Specialized.OrderedDictionary`
Или, как вариант, вы можете хранить ключи в отдельном массиве и использовать его как способ определения порядка.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы