Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
5 / 5 / 4
Регистрация: 20.01.2011
Сообщений: 350
1
.NET 4.x

Одинаковые значения для нескольких списков

11.07.2015, 15:43. Показов 1130. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет.
Почему-то подобных решений не смог найти в интернете (может и не так ищу)
Итак - имеется 4 списка, основанных на одном начальном списке:
C#
1
2
3
4
5
6
7
8
var lstShowOn = new List<Functions>();
if (showOn) lstShowOn.AddRange(lstByAcad.Where(f => f.OnOff));
var lstShowOff = new List<Functions>();
if (showOff) lstShowOff.AddRange(lstByAcad.Where(f => !f.OnOff));
var lstShowPaid = new List<Functions>();
if (showPaid) lstShowPaid.AddRange(lstByAcad.Where(f => !f.Price.Equals("0")));
var lstShowNew = new List<Functions>();
if (showNew) lstShowNew.AddRange(lstByAcad.Where(f => f.BtDownloadVisibility == Visibility.Visible));
Т.е. есть какой-то список значений. Для каждого нужного мне условия я создаю новый список

Теперь мне нужно получить один единственный список в котором будут одинаковые значения для всех 4 списков. Причем нужно учесть, что пустые списки должны пропускаться, а не "затирать" результат. Пробовал метод Intersect, но он тут не подходит.
Может есть какое простое решение?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.07.2015, 15:43
Ответы с готовыми решениями:

Сериализация нескольких списков в один файл
Имеется несколько списков: public static List&lt;Photo&gt; photos = new List&lt;Photo&gt;(); public...

Копирование одновременно нескольких картинок: в итоге все одинаковые
Пытаюсь скопировать файлы в нужную папку чтобы потом их запускать. Но проблема в том что, файлы с...

Одинаковые значения для раззных class'ов
Здратвуйте. Возникла следующая ситуация. В CSS-файле накопилось довольно много значений class, у...

Хочу написать функцию для удаления всех node у которых одинаковые значения
писал вот так, но почему то не работает, то есть для начала хочу просто отображать индексы таких...

4
Эксперт .NETАвтор FAQ
10410 / 5140 / 1825
Регистрация: 11.01.2015
Сообщений: 6,226
Записей в блоге: 34
11.07.2015, 17:30 2
Modis, Вместо List<Functions>, используйте Hashset<Functions>, а затем используйте метод IntersectWith для получения набора элементов, присутствующих по всех наборах.
Если же у вас списки List<> уже присутствуют изначально, тогда все равно вам нужно создать Hashset на базе ваших списков, и далее IntersectWith().
0
5 / 5 / 4
Регистрация: 20.01.2011
Сообщений: 350
11.07.2015, 18:10  [ТС] 3
Но ведь IntersectWith я могу использовать для двух Hashset. Т.е. если я буду использовать метод последовательно для нескольких наборов, я потеряю некоторые значения.
Допустим есть функция, которая из 4 параметров удовлетворяет двум:
1 набор - есть функция
2 набор - нет функции
3 набор - есть функция
4 набор - нет функции
и если я теперь буду использовать последовательно IntersectWith, то после сравнения со вторым набором моя функция "исчезнет", хотя она есть в 3 наборе
0
870 / 720 / 304
Регистрация: 15.04.2013
Сообщений: 2,047
Записей в блоге: 5
11.07.2015, 18:28 4
Modis,
Возможно вам тогда подойдет Union, в случае с множеством это UnionWith
0
Эксперт .NETАвтор FAQ
10410 / 5140 / 1825
Регистрация: 11.01.2015
Сообщений: 6,226
Записей в блоге: 34
11.07.2015, 18:30 5
Modis, тогда вы уж определитесь, что вам нужно, потому что у вас взаимоисключающие параграфы:
Теперь мне нужно получить один единственный список в котором будут одинаковые значения для всех 4 списков.
Допустим есть функция, которая из 4 параметров удовлетворяет двум:
0
11.07.2015, 18:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.07.2015, 18:30
Помогаю со студенческими работами здесь

Доказать, что для любых величин следующие пары логических выражений имеют одинаковые значения
пожалуйста решите задачку на языке С++ !! Доказать (путем перебора возможных значений), что...

Связка из нескольких списков
Привет гуру Accessa, просьба помочь разобраться &quot;как это делать&quot;. В общем создал таблицы и даже...

Доказатьчто для любых величин А, В, С типа Boolean следующие пары логических выражений имеют одинаковые значения
Доказать (путем перебора возможных значений), что для любых величин А, В, С типа Boolean следующие...

Как сохранить значения для нескольких checkBox?
Для checkBox1 и 3 по умолчанию выставлено: Checked True и CheckSatate Checked (программно). Для...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru