Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> List<T> и DISTINCT, есть ли что то подобное??? 
:(
    Опции темы
Banderos
Дата 8.4.2011, 12:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 21.3.2011

Репутация: нет
Всего: нет



Здравствуйте!!!

У меня есть лист, содержащий N-ое кол-во элементов, известно, что в списке много одинаковых элементов.

Вопрос: есть ли у списка какое то свойство или метод, позволяющее удалить одинаковые элементы из него, т.е. оставить каждый элемент в 1 экземпляре???

Заранее спасибо!!!
PM MAIL   Вверх
-Mikle-
Дата 8.4.2011, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 4
Всего: 59



Есть, только не у самого списка, а у метода расширения. Добавляешь using System.Linq (если его еще нету) и:

Код

    List<int> firstList = new List<int>();
    //.......
    List<int> uniqueList = new List<int>(firstList.Distinct());



--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
jonie
Дата 8.4.2011, 21:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 6
Всего: 118



уж лучше тогда в HashSet пихать, нежели в List<T>, тогда и Distinct не нужен, да и сдается мне это будет побыстрее...


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
-Mikle-
Дата 11.4.2011, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 4
Всего: 59



Цитата(jonie @  9.4.2011,  00:09 Найти цитируемый пост)
 да и сдается мне это будет побыстрее

Однозначно конечно.


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
Banderos
Дата 11.4.2011, 10:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 21.3.2011

Репутация: нет
Всего: нет



Всем спасибо!!!
PM MAIL   Вверх
neutrino
Дата 11.4.2011, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Gothic soul
****


Профиль
Группа: Модератор
Сообщений: 3041
Регистрация: 25.3.2002
Где: Верхняя Галилея, Кармиэль

Репутация: нет
Всего: 62



Не забываем только реализовать Equals & GetHashcode


--------------------
The truth comes from within ...

Покойся с миром, Vit 
PM MAIL WWW ICQ Skype GTalk   Вверх
Banderos
Дата 12.4.2011, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 21.3.2011

Репутация: нет
Всего: нет



Коллеги, я пишу в Visual Studio 2010, но проект создавал с использованием .NET Framework 2.0 и смотрю, что нет ни библиотеки using System.Linq и нет HashSet, и через референс не нашел System.Linq, что скажите?
PM MAIL   Вверх
gambit
Дата 12.4.2011, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



Banderos,
1. Переделывать на .net 4
2. Писать свой расширяющий метод для фильтрации или add
PM MAIL ICQ Skype   Вверх
bend0r
Дата 12.4.2011, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 14.9.2005

Репутация: нет
Всего: 2



Цитата(Banderos @ 12.4.2011,  09:08)
Коллеги, я пишу в Visual Studio 2010, но проект создавал с использованием .NET Framework 2.0 и смотрю, что нет ни библиотеки using System.Linq и нет HashSet, и через референс не нашел System.Linq, что скажите?

если использовать .NET Framework 2.0 не принципиально то версия меняется в свойствах проекта. иначе свой метод
PM MAIL   Вверх
jonie
Дата 12.4.2011, 21:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 6
Всего: 118



можно тут посмотреть http://www.itu.dk/research/c5/ или тут http://powercollections.codeplex.com/ , наверняка должно быть где-то наподобие хешсета


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Banderos
Дата 14.4.2011, 10:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 21.3.2011

Репутация: нет
Всего: нет



Всем спасибо за помощь!!! 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0499 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.