Вопросы с тегом «generics»

Обобщения являются формой параметрического полиморфизма, встречающейся в ряде языков, включая языки .NET, Java, Swift и Rust.


18
Список <T> или IList <T> [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 7 месяцев назад . Может кто-нибудь объяснить мне, почему я хотел бы использовать IList над списком в …
495 c#  list  generics 


26
Как удалить элементы из общего списка при переборах по нему?
Я ищу лучший шаблон для работы со списком элементов, каждый из которых необходимо обработать, а затем в зависимости от результата удаляются из списка. Вы не можете использовать .Remove(element)внутри foreach (var element in X)(потому что это приводит к Collection was modified; enumeration operation may not execute.исключению) ... вы также не можете …
451 c#  list  loops  generics  key-value 

7
В чем смысл бриллиантового оператора (<>) в Java 7?
Алмазный оператор в Java 7 позволяет код, подобный следующему: List&lt;String&gt; list = new LinkedList&lt;&gt;(); Однако в Java 5/6 я могу просто написать: List&lt;String&gt; list = new LinkedList(); Я понимаю, что стирание типа это то же самое. (Универсальный в любом случае удаляется во время выполнения). Зачем вообще беспокоиться о бриллианте? Какие …

9
List <T> OrderBy по алфавиту
Я использую C # на Framework 3.5. Я ищу, чтобы быстро отсортировать Generic List&lt;T&gt;. Для примера, скажем, у меня есть список Personтипа со свойством фамилия. Как бы отсортировать этот список с помощью лямбда-выражения? List&lt;Person&gt; people = PopulateList(); people.OrderBy(???? =&gt; ?????)
443 c#  generics  list  lambda  sorting 


13
Google Gson - десериализовать список <class> объект? (универсальный тип)
Я хочу передать объект списка через Google Gson, но не знаю, как десериализовать универсальные типы. Что я попробовал, посмотрев на это (ответ BalusC): MyClass mc = new Gson().fromJson(result, new List&lt;MyClass&gt;(){}.getClass()); но затем я получаю ошибку в eclipse, говорящую «Тип new List () {} должен реализовывать унаследованный абстрактный метод ...», и …
441 java  json  generics  gson 

5
Возможное загрязнение кучи через параметр varargs
Я понимаю, что это происходит с Java 7 при использовании varargs с универсальным типом; Но мой вопрос .. Что именно означает «Затмение», когда говорит, что «его использование может привести к загрязнению кучи?» А также Как новая @SafeVarargsаннотация предотвращает это?

22
Общий список анонимного класса
В C # 3.0 вы можете создать анонимный класс со следующим синтаксисом var o = new { Id = 1, Name = "Foo" }; Есть ли способ добавить эти анонимные классы в общий список? Пример: var o = new { Id = 1, Name = "Foo" }; var o1 = …


14
Передача аргументов в C # generic new () шаблонного типа
Я пытаюсь создать новый объект типа T через его конструктор при добавлении в список. Я получаю сообщение об ошибке компиляции: Сообщение об ошибке: 'T': не может предоставить аргументы при создании экземпляра переменной Но у моих классов есть аргумент конструктора! Как я могу сделать эту работу? public static string GetAllItems&lt;T&gt;(...) where …

11
По каким причинам Map.get (Object key) не является (полностью) универсальным
Каковы причины, по которым принято решение не иметь полностью общий метод get в интерфейсе java.util.Map&lt;K, V&gt;. Чтобы прояснить вопрос, подпись метода V get(Object key) вместо V get(K key) и мне интересно, почему (то же самое для remove, containsKey, containsValue).

2
Универсальные символы Java с несколькими классами
Я хочу иметь объект Class, но я хочу заставить любой класс, который он представляет, расширить класс A и реализовать интерфейс B. Я могу сделать: Class&lt;? extends ClassA&gt; Или: Class&lt;? extends InterfaceB&gt; но я не могу сделать оба. Есть ли способ сделать это?

7
Метод имеет такое же стирание, что и другой метод в типе
Почему не разрешено использовать следующие два метода в одном классе? class Test{ void add(Set&lt;Integer&gt; ii){} void add(Set&lt;String&gt; ss){} } Я получаю compilation error Метод add (Set) имеет то же самое стирание, что и Add (Set), что и другой метод в типе Test. в то время как я могу обойти это, …
381 java  generics 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.