Mam następującą metodę: namespace ListHelper { public class ListHelper<T> { public static bool ContainsAllItems(List<T> a, List<T> b) { return b.TrueForAll(delegate(T t) { return a.Contains(t); }); } } } Celem jest określenie, czy lista zawiera wszystkie elementy innej listy. Wydaje mi się, że coś takiego byłoby już wbudowane w .NET, czy …
W C / Objective-C można znaleźć minimalną i maksymalną wartość między dwiema liczbami za pomocą makr MIN i MAX. Swift nie obsługuje makr i wydaje się, że nie ma odpowiedników w bibliotece językowej / podstawowej. Trzeba iść z niestandardowego rozwiązania, może na podstawie generycznych jak ten jeden ?
Czy możesz jakoś rzucić List<int>na List<string>? Wiem, że mógłbym przelecieć i .ToString () to coś, ale obsada byłaby niesamowita. Jestem w C # 2.0 (więc nie ma LINQ ).
Czy istnieje sposób na utworzenie listy prymitywów int lub dowolnych prymitywów w Javie, takich jak śledzenie? List<int> myList = new ArrayList<int>(); Wygląda na to, że mogę to zrobić List myList = new ArrayList(); i dodaj „int” do tej listy. Ale wtedy oznaczałoby to, że mogę dodać cokolwiek do tej listy. …
[ThreadStatic]jest definiowany przy użyciu atrybutu, podczas gdy ThreadLocal<T>używa generic. Dlaczego wybrano różne rozwiązania projektowe? Jakie są zalety i wady używania atrybutów ogólnych zamiast atrybutów w tym przypadku?
Widziałem wcześniej używany symbol wieloznaczny oznaczający dowolny obiekt - ale ostatnio widziałem użycie: <? extends Object> Ponieważ wszystkie obiekty rozszerzają Object, czy te dwa zastosowania są synonimami?
Powiedzmy, że mam dowolną liczbę kolekcji, z których każda zawiera obiekty tego samego typu (na przykład List<int> fooi List<int> bar). Gdyby te kolekcje same znajdowały się w kolekcji (np. Czcionek List<List<int>>, mógłbym użyć ich SelectManydo połączenia ich wszystkich w jedną kolekcję). Jeśli jednak te kolekcje nie są już w tej …
Mam klasę ogólną, która powinna zezwalać na dowolny typ, prymitywny lub inny. Jedynym problemem jest używanie default(T). Kiedy wywołujesz default dla typu wartości lub ciągu, inicjalizuje go do rozsądnej wartości (takiej jak pusty ciąg). Kiedy wywołujesz default(T)obiekt, zwraca on null. Z różnych powodów musimy się upewnić, że jeśli nie jest …
Chcę użyć inicjatora kolekcji dla następnego bitu kodu: public Dictionary<int, string> GetNames() { Dictionary<int, string> names = new Dictionary<int, string>(); names.Add(1, "Adam"); names.Add(2, "Bart"); names.Add(3, "Charlie"); return names; } Więc zazwyczaj powinno to być coś takiego: return new Dictionary<int, string> { 1, "Adam", 2, "Bart" ... Ale jaka jest poprawna …
Mam metodę ogólną, która przyjmuje żądanie i zapewnia odpowiedź. public Tres DoSomething<Tres, Treq>(Tres response, Treq request) {/*stuff*/} Ale nie zawsze chcę odpowiedzi na moje żądanie i nie zawsze chcę podawać dane żądania, aby uzyskać odpowiedź. Nie chcę też kopiować i wklejać metod w całości, aby wprowadzić drobne zmiany. To, czego …
Czy ktoś mógłby mi wyjaśnić, dlaczego List.Contains()funkcja generyczna działa tak wolno? Mam List<long>około miliona cyfr i kod, który ciągle sprawdza, czy w tych liczbach jest określona liczba. Próbowałem zrobić to samo używając Dictionary<long, byte>i Dictionary.ContainsKey()funkcji i było to około 10-20 razy szybciej niż w przypadku listy. Oczywiście nie chcę używać …
W szablonach C ++ można określić, że określony parametr typu jest domyślny. To znaczy, o ile nie zostanie to wyraźnie określone, użyje typu T. Czy można to zrobić lub przybliżyć w C #? Szukam czegoś takiego: public class MyTemplate<T1, T2=string> {} Tak, że instancja typu, który nie określa jawnie T2: …
Czy istnieje sposób na sprawdzenie, czy T dziedziczy / implementuje klasę / interfejs? private void MyGenericClass<T> () { if(T ... inherits or implements some class/interface }
Jaka jest poprawna składnia tego: IList<string> names = "Tom,Scott,Bob".Split(',').ToList<string>().Reverse(); Co ja psuję? Co oznacza TSource?
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.