Запитання з тегом «generics»

Генеріки - це форма параметричного поліморфізму, що зустрічається в різних мовах, включаючи мови NET, Java, Swift та Rust.

6
Яка різниця між "E", "T" і "?" для дженерики Java?
Я натрапив на такий код Java: public interface Foo<E> {} public interface Bar<T> {} public interface Zar<?> {} Яка різниця між усіма трьома вищезазначеними та чим вони називають цей тип оголошень класу чи інтерфейсу на Java?
261 java  generics 

27
Перетворити загальний список / Численні в DataTable?
У мене мало методів, які повертають різні загальні списки. Існує в .net будь-який статичний метод класу або що-небудь для перетворення будь-якого списку в таблицю даних? Єдине, що я можу собі уявити, це використовувати Reflection для цього. ЯКЩО я маю це: List<Whatever> whatever = new List<Whatever>(); (Цей наступний код, звичайно, не …
261 c#  list  generics  datatable 


4
ReSharper попереджає: "Статичне поле в загальному типі"
public class EnumRouteConstraint<T> : IRouteConstraint where T : struct { private static readonly Lazy<HashSet<string>> _enumNames; // <-- static EnumRouteConstraint() { if (!typeof(T).IsEnum) { throw new ArgumentException( Resources.Error.EnumRouteConstraint.FormatWith(typeof(T).FullName)); } string[] names = Enum.GetNames(typeof(T)); _enumNames = new Lazy<HashSet<string>>(() => new HashSet<string> ( names.Select(name => name), StringComparer.InvariantCultureIgnoreCase )); } public bool Match(HttpContextBase httpContext, …

3
Загальний метод з множинними обмеженнями
У мене є загальний метод, який має два загальних параметра. Я спробував скласти код нижче, але він не працює. Це обмеження .NET? Чи можливо мати кілька обмежень для різних параметрів? public TResponse Call<TResponse, TRequest>(TRequest request) where TRequest : MyClass, TResponse : MyOtherClass
251 c#  generics  .net-3.5 


11
Як використовувати клас <T> на Java?
У цьому питанні добре обговорюється Generics і що вони насправді роблять за кадром , тому ми всі знаємо, що Vector&lt;int[]&gt;це вектор цілих масивів, іHashTable&lt;String, Person&gt; це таблиця, чиї ключі - це рядки та значення Persons. Однак, що мене наштовхує - це використання Class&lt;&gt;. Клас java Classтакож повинен приймати назву шаблону …

17
Як можна занести список супертипів до списку підтипів?
Наприклад, скажімо, що у вас є два класи: public class TestA {} public class TestB extends TestA{} У мене є метод, який повертає a, List&lt;TestA&gt;і я хотів би передати всі об'єкти в цьому списку TestBтак, щоб я закінчив "a" List&lt;TestB&gt;.

3
Неактуальний доступ до загального словника
У мене є додаток, який використовує керовані dlls. Один із цих dll повертає загальний словник: Dictionary&lt;string, int&gt; MyDictionary; Словник містить клавіші з верхнього та нижнього регістру. З іншого боку я отримую список потенційних ключів (рядка), однак я не можу гарантувати справу. Я намагаюся отримати значення у словнику за допомогою клавіш. …
244 c#  generics  dictionary 

7
Java generics типу стирання: коли і що трапляється?
Я читав про стирання типу Java на веб-сайті Oracle . Коли відбувається стирання типу? Під час компіляції чи часу виконання? Коли завантажується клас? Коли клас інстанціюється? Багато сайтів (включаючи згаданий вище офіційний підручник) кажуть, що стирання типу відбувається під час компіляції. Якщо інформація про тип повністю видаляється під час компіляції, …


5
Як передати параметри до Activator.CreateInstance <T> ()
Я хочу створити екземпляр типу, який я вказую в загальному методі, який у мене є. Цей тип має ряд перевантажених конструкторів. Мені б хотілося передати аргументи конструкторам, але Activator.CreateInstance&lt;T&gt;() не бачить, щоб це було як варіант. Чи є інший спосіб це зробити?

11
Перетворення загального типу з рядка
У мене є клас, який я хочу використовувати для зберігання "властивостей" для іншого класу. Ці властивості просто мають ім'я та значення. В ідеалі я хотів би мати можливість додати введені властивості, щоб повернене "значення" завжди було такого типу, яким я його хочу. Тип завжди повинен бути примітивним. Цей клас підкласи …

10
Створити екземпляр загального типу, конструктору якого потрібен параметр?
Якщо BaseFruitв конструкторі, який приймає int weight, можна створити шматочок фрукта таким загальним методом? public void AddFruit&lt;T&gt;()where T: BaseFruit{ BaseFruit fruit = new T(weight); /*new Apple(150);*/ fruit.Enlist(fruitManager); } Приклад додається за коментарями. Здається, я можу це зробити, лише якщо даю BaseFruitконструктор без параметрів, а потім заповнити все за допомогою змінних …
230 c#  .net  generics 

13
перетворити список об’єктів одного типу в інший, використовуючи лямбда-вираз
У мене є цикл foreach, який читає список об'єктів одного типу та створює список об'єктів іншого типу. Мені сказали, що лямбда-вираз може досягти такого ж результату. var origList = List&lt;OrigType&gt;(); // assume populated var targetList = List&lt;TargetType&gt;(); foreach(OrigType a in origList) { targetList.Add(new TargetType() {SomeValue = a.SomeValue}); } Будь-яка допомога …
224 c#  generics  lambda 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.