generics- все статьи тега ➜ страница 2
Google Gson-десериализовать объект списка? (универсальный тип)
Я хочу передать объект списка через Google Gson, но я не знаю, как десериализовать общие типы. то, что я пытался, глядя на эту (ответ BalusC это): MyClass mc = new Gson().fromJson(result, new List<MyClass>(){}.getClass()); но затем я получаю ошибку в eclipse, говоря: "тип new List(){} должен реализовать унаследованный абстрактный метод..."и если я использую быстрое исправление, я получаю монстра из более чем 20 окурков метода. Я уверен, что есть более простое решение, но я не могу н ...
ArrayList vs List в C#
В чем разница между ArrayList и List<> в C#? только что List<> имеет тип while ArrayList не? ...
Передача одного элемента в качестве IEnumerable
есть ли простой способ передать один элемент типа T к методу, который ожидает ...
Типа в качестве универсального параметра возможные значения null?
Я хочу сделать что-то вроде этого : myYear = record.GetValueOrNull<int?>("myYear"), обратите внимание на тип nullable в качестве универсального параметра. С GetValueOrNull функция может возвращать null, моя первая попытка была такой: public static T GetValueOrNull<T>(this DbDataRecord reader, string columnName) where T : class { object columnValue = reader[columnName]; if (!(columnValue is DBNull)) { return (T)columnValue; } return null; } но о ...
Что такое более высокий тип kinded в Scala?
Вы можете найти на сайте: выше kinded type = = конструктор типов? class AClass[T]{...} // For example, class List[T] некоторые говорят, что это более высокий тип kinded, потому что он рефераты по типам, которые будут соответствовать определению. высшее kinded типов типы, которые принимают другие типы и построить новый тип Они, хотя также известны как конструктор типа. (Например, в программирование в Scala). Higher kinded type = = конструктор типа, который принимает конструктор ...
Что означает "где T: class, new ()"?
не могли бы вы объяснить мне, что where T : class, new() значит в следующей строке кода? void Add<T>(T item) where T : class, new(); ...
Получить универсальный тип java.утиль.Список
У меня есть; List<String> stringList = new ArrayList<String>(); List<Integer> integerList = new ArrayList<Integer>(); есть ли (простой) способ получить общий тип списка? ...
В чем разница между '?', 'E', и ' T ' для Java дженериков?
я сталкиваюсь с Java-кодом следующим образом: public interface Foo<E> {} public interface Bar<T> {} public interface Zar<?> {} в чем разница между всеми тремя из вышеперечисленных и что они называют этим типом объявления класса или интерфейса в Java? ...
Как передать параметры в активатор.Метод createinstance ()
Я хочу создать экземпляр типа, который я указываю в общем методе, который у меня есть. Этот тип имеет ряд перегруженных конструкторов. Я хотел бы иметь возможность передавать аргументы конструкторам, но Activator.CreateInstance<T>() не видит, чтобы иметь это в качестве опции. есть ли другой способ сделать это? ...
Создать экземпляр универсального типа?
если BaseFruit имеет конструктор, который принимает int weight, могу ли я создать экземпляр фрукта в общем методе, как это? public void AddFruit<T>()where T: BaseFruit{ BaseFruit fruit = new T(weight); /*new Apple(150);*/ fruit.Enlist(fruitManager); } пример добавлен за комментарии. Кажется, я могу сделать это только если я даю BaseFruit конструктор без параметров, а затем залить все через переменные-члены. В моем реальном коде (не о фруктах) это довольно непрактично. -обновить ...
Что означает знак вопроса в параметре типа Java generics?
Это небольшой фрагмент кода, взятый из некоторых примеров, которые сопровождают Стэнфордский парсер. Я разрабатываю Java около 4 лет, но никогда не имел очень сильного понимания того, что этот стиль кода должен указывать. List<? extends HasWord> wordList = toke.tokenize(); Я не беспокоюсь о деталях кода. Что меня смущает, так это то, что именно общее выражение должно передавать на английском языке. может кто-нибудь объяснить это мне? ...
Статический метод в универсальном классе?
в Java, я хотел бы иметь что-то как: class Clazz<T> { static void doIt(T object) { // shake that booty } } но я Cannot make a static reference to the non-static type T Я не понимаю дженерики за пределами основных применений и, следовательно, не могу понять этого. Это не помогает, что я не смог найти много информации в интернете по этому вопросу. может ли кто-нибудь уточнить, возможно ли такое использование, аналогичным образом? Кроме того, почему моя первоначальная попытка ок ...
Как сделать Java-класс, который реализует один интерфейс с двумя универсальными типами?
у меня есть универсальный интерфейс public interface Consumer<E> { public void consume(E e); } у меня есть класс, который потребляет два типа объектов, поэтому я хотел бы сделать что-то вроде: public class TwoTypesConsumer implements Consumer<Tomato>, Consumer<Apple> { public void consume(Tomato t) { ..... } public void consume(Apple a) { ...... } } видимо, я не могу этого сделать. Я, конечно, могу реализовать отправку сам, например public class TwoTypesCons ...
Mockito: список Сопоставителей с дженериками
Mockito предлагает: when(mock.process(Matchers.any(List.class))); Как избежать предупреждения, если process принимает List<Bar> вместо? ...
Как клонировать общий список в Java?
у меня есть ArrayList<String> что я хотел бы вернуть копию. ArrayList есть метод клонирования имеет следующую подпись: public Object clone() после вызова этого метода, как я могу вернуть возвращенный объект обратно в ArrayList<String>? ...
Определение в Java перечислимые
Я думал, что понимаю Java generics довольно хорошо, но потом я наткнулся на следующее в java.ленг.Перечисление: class Enum<E extends Enum<E>> может кто-нибудь объяснить, как интерпретировать этот параметр типа? Бонусные баллы за предоставление других примеров использования аналогичного параметра типа. ...
Почему массивы ковариантны, а обобщения инвариантны?
от эффективного Java Джошуа Блоха, массивы отличаются от универсального типа двумя важными способами. Первые массивы являются ковариантными. Дженерики являются инвариантными. Ковариант просто означает, что если X является подтипом Y, то X[] также будет подтипом Y[]. Массивы ковариантны, так как строка является подтипом объекта So String[] is subtype of Object[] инвариант просто означает, независимо от того, является ли X подтипом Y или нет , List<X> will not be subType of List<Y& ...
Нет общей реализации OrderedDictionary?
там, кажется, не будет общей реализации OrderedDictionary (который находится в System.Collections.Specialized пространство имен) в .NET 3.5. Есть ли тот, который мне не хватает? Я нашел реализации там, чтобы обеспечить функциональность, но задался вопросом, если/почему нет универсальной реализации из коробки, и если кто-нибудь знает, является ли это что-то в .NET 4.0? ...
Как сделать возвращаемый тип метода универсальным?
есть ли способ сделать этот метод универсальным, чтобы я мог вернуть строку, bool, int или double? Прямо сейчас он возвращает строку, но если он может найти "true" или "false" в качестве значения конфигурации, я хотел бы вернуть bool, например. public static string ConfigSetting(string settingName) { return ConfigurationManager.AppSettings[settingName]; } ...
Получить тип универсального параметра в Java с отражением
можно ли получить тип универсального параметра? пример: public final class Voodoo { public static void chill(List<?> aListWithTypeSpiderMan) { // Here I'd like to get the Class-Object 'SpiderMan' Class typeOfTheList = ???; } public static void main(String... args) { chill(new ArrayList<SpiderMan>()); } } ...