Czy można uzyskać następujący kod? Wiem, że to nie działa, ale zastanawiam się, czy istnieje obejście? Type k = typeof(double); List<k> lst = new List<k>();
Czy można uzyskać następujący kod? Wiem, że to nie działa, ale zastanawiam się, czy istnieje obejście? Type k = typeof(double); List<k> lst = new List<k>();
To bardziej dokumentacja niż prawdziwe pytanie. Wydaje się, że to nie zostało jeszcze rozwiązane w SO (chyba że to przegapiłem), więc oto: Wyobraź sobie klasę ogólną, która zawiera statyczny element członkowski: class Foo<T> { public static int member; } Czy istnieje nowe wystąpienie...
Podobnie jak rzutowanie int na wyliczenie w C #, ale moje wyliczenie jest parametrem typu ogólnego. Jak najlepiej sobie z tym poradzić? Przykład: private T ConvertEnum<T>(int i) where T : struct, IConvertible { return (T)i; } Generuje błąd kompilatora Cannot convert type 'int' to...
Pisząc kod dla innej odpowiedzi na tej stronie, natknąłem się na tę osobliwość: static void testSneaky() { final Exception e = new Exception(); sneakyThrow(e); //no problems here nonSneakyThrow(e); //ERRROR: Unhandled exception: java.lang.Exception } @SuppressWarnings("unchecked") static...
Próbuję połączyć kilka podobnych metod w metodę ogólną. Mam kilka metod, które zwracają wartość kwerendy lub null, jeśli ten obiekt kwerendy nie istnieje lub ma nieprawidłowy format. Byłoby to wystarczająco łatwe, gdyby wszystkie typy natywnie dopuszczały wartość null, ale muszę użyć typu...
Przygotowuję się do utworzenia ogólnej klasy EventArgs dla argumentów zdarzeń, które zawierają pojedynczy argument: public class EventArg<T> : EventArgs { // Property variable private readonly T p_EventData; // Constructor public EventArg(T data) { p_EventData = data; } //...
Jestem nowicjuszem w Hibernate i piszę prostą metodę zwracania listy obiektów pasujących do określonego filtra. List<Foo>wydawało się naturalnym typem powrotu. Cokolwiek robię, nie mogę uszczęśliwić kompilatora, chyba że użyję brzydkiego @SuppressWarnings. import java.util.List; import...
Mam metodę, która używa IList<T>parametru jako parametru. Muszę sprawdzić, jaki jest typ tego Tobiektu i zrobić coś na jego podstawie. Próbowałem użyć Twartości, ale kompilator na to nie pozwala. Moje rozwiązanie jest następujące: private static string BuildClause<T>(IList<T>...
Przeczytałem książkę O'Reilly, dzięki której poznałem zasadę wstępu . Użyj extendssymbolu wieloznacznego, gdy otrzymujesz wartości tylko ze struktury. Użyj supersymbolu wieloznacznego, gdy umieszczasz tylko wartości w strukturze. I nie używaj symbolu wieloznacznego, gdy oboje chcecie...
Ostatnio czytałem ten artykuł: http://download.oracle.com/javase/tutorial/extra/generics/wildcards.html Moje pytanie brzmi, zamiast tworzyć taką metodę: public void drawAll(List<? extends Shape> shapes){ for (Shape s: shapes) { s.draw(this); } } Mogę utworzyć taką metodę i działa...
Mam ogólny interfejs, taki jak ten przykład z jednym ograniczeniem typu: export interface IExample<T extends MyClass> { getById(id: number): T; } Czy można określić wiele ograniczeń typu zamiast tylko jednego?
Mam fasolę, Item<T>która jest wymagana do autoprzewodowania w @Configurationklasie. @Configuration public class AppConfig { @Bean public Item<String> stringItem() { return new StringItem(); } @Bean public Item<Integer> integerItem() { return new IntegerItem();...
Jaki jest najbardziej efektywny sposób zamiany listy wartości ze słownika na tablicę? Na przykład, jeśli mam Dictionarygdzie Keyjest Stringi Valuejest Foo, chcę dostaćFoo[] Używam VS 2005, C # 2.0
Mam kilka List<>niestandardowych obiektów. Muszę znaleźć obiekt na tej liście według jakiejś unikalnej właściwości i zaktualizować inną właściwość tego obiektu. Jak to zrobić najszybciej?
Próbuję znaleźć sposób na iterację wartości wyliczenia podczas korzystania z typów ogólnych. Nie wiem, jak to zrobić lub czy jest to możliwe. Poniższy kod ilustruje to, co chcę zrobić. Zauważ, że kod T.values () nie jest prawidłowy w poniższym kodzie. public class Filter<T> { private...
Jak porównać wartości typów ogólnych? Zredukowałem to do minimalnej próbki: public class Foo<T> where T : IComparable { private T _minimumValue = default(T); public bool IsInRange(T value) { return (value >= _minimumValue); // <-- Error here } } Błąd: Operator „> =”...
Czy można w C # zdefiniować taką klasę, że class GenericCollection<T> : SomeBaseCollection<T> where T : Delegate Za całe życie nie mogłem tego zrobić wczoraj w .NET 3.5. Próbowałem użyć delegate, Delegate, Action<T> and Func<T, T> Wydaje mi się, że powinno to być w...
Mam tło VB i przechodzę do C # dla mojej nowej pracy. Generalnie staram się też polepszyć .NET. Widziałem słowo kluczowe „T” często używane w próbkach, które ludzie publikują. Co oznacza „T” w języku C #? Na przykład: public class SomeBase<T> where T : SomeBase<T>, new() Co robi...
Użyte odwołanie do metody ma typ zwracany Integer. Jednak niezgodność Stringjest dozwolona w poniższym przykładzie. Jak naprawić withdeklarację metody, aby uzyskać bezpieczny typ referencyjny metody bez ręcznego rzutowania? import java.util.function.Function; public class MinimalExample {...
W tym przykładzie: import java.util.*; public class Example { static void doesntCompile(Map<Integer, List<? extends Number>> map) {} static <T extends Number> void compiles(Map<Integer, List<T>> map) {} static void function(List<? extends Number> outer) {...