Als «generics» getaggte Fragen

Generika sind eine Form des parametrischen Polymorphismus, der in einer Reihe von Sprachen zu finden ist, darunter .NET-Sprachen, Java, Swift und Rust.

6
Was bedeutet das Fragezeichen im Typparameter von Java Generics?
Dies ist ein kleiner Codeausschnitt aus einigen Beispielen, die dem Stanford Parser beiliegen. Ich habe in Java seit ungefähr 4 Jahren entwickelt, aber nie ein sehr starkes Verständnis dafür gehabt, was dieser Codestil anzeigen soll. List<? extends HasWord> wordList = toke.tokenize(); Ich mache mir keine Sorgen um die Details des …
216 java  generics 



7
Wann benötigen Java-Generika <? erweitert T> anstelle von <T> und gibt es einen Nachteil beim Umschalten?
Anhand des folgenden Beispiels (Verwenden von JUnit mit Hamcrest-Matchern): Map&lt;String, Class&lt;? extends Serializable&gt;&gt; expected = null; Map&lt;String, Class&lt;java.util.Date&gt;&gt; result = null; assertThat(result, is(expected)); Dies wird nicht mit der assertThatSignatur der JUnit- Methode kompiliert : public static &lt;T&gt; void assertThat(T actual, Matcher&lt;T&gt; matcher) Die Compiler-Fehlermeldung lautet: Error:Error:line (102)cannot find symbol method …
205 java  generics  junit 


7
Verweisen auf generische Klassen und Methoden in der XML-Dokumentation
Beim Schreiben von XML-Dokumentation können Sie verwenden &lt;see cref="something"&gt;something&lt;/see&gt;, was natürlich funktioniert. Aber wie referenzieren Sie eine Klasse oder eine Methode mit generischen Typen? public class FancyClass&lt;T&gt; { public string FancyMethod&lt;K&gt;(T value) { return "something fancy"; } } Wenn ich irgendwo eine XML-Dokumentation schreiben würde, wie würde ich auf die …

11
Statische Methode in einer generischen Klasse?
In Java hätte ich gerne etwas wie: class Clazz&lt;T&gt; { static void doIt(T object) { // ... } } Aber ich verstehe Es kann kein statischer Verweis auf den nicht statischen Typ T erstellt werden Ich verstehe Generika nicht über die grundlegenden Verwendungszwecke hinaus und kann daher nicht viel Sinn …

23
Generisches TryParse
Ich versuche, eine generische Erweiterung zu erstellen, die 'TryParse' verwendet, um zu überprüfen, ob eine Zeichenfolge ein bestimmter Typ ist: public static bool Is&lt;T&gt;(this string input) { T notUsed; return T.TryParse(input, out notUsed); } Dies wird nicht kompiliert, da das Symbol 'TryParse' nicht aufgelöst werden kann. Soweit ich weiß, ist …
195 c#  generics  tryparse 

10
Unterschied zwischen Liste, Liste <?>, Liste <T>, Liste <E> und Liste <Objekt>
Was sind die Unterschiede zwischen List, List&lt;?&gt;, List&lt;T&gt;, List&lt;E&gt;, und List&lt;Object&gt;? 1. Liste List: ist ein Rohtyp, daher nicht typesafe. Es wird nur dann ein Laufzeitfehler generiert, wenn das Casting schlecht ist. Wir möchten einen Fehler bei der Kompilierung, wenn die Besetzung schlecht ist. Nicht zu empfehlen. 2. Liste &lt;?&gt; …
194 java  generics 

8
Java: Wie erhalte ich ein Klassenliteral von einem generischen Typ?
Normalerweise habe ich gesehen, dass Leute das Klassenliteral wie folgt verwenden: Class&lt;Foo&gt; cls = Foo.class; Aber was ist, wenn der Typ generisch ist, zB List? Dies funktioniert gut, hat aber eine Warnung, da List parametrisiert werden sollte: Class&lt;List&gt; cls = List.class Warum also nicht ein hinzufügen &lt;?&gt;? Nun, dies verursacht …
193 java  generics  class  literals 

13
Leistung von Arrays vs. Listen
Angenommen, Sie benötigen eine Liste / ein Array von Ganzzahlen, die Sie häufig iterieren müssen, und ich meine extrem oft. Die Gründe können variieren, aber sagen wir, es befindet sich im Herzen der innersten Schleife einer Verarbeitung mit hohem Volumen. Im Allgemeinen würde man sich aufgrund ihrer flexiblen Größe für …

5
<out T> vs <T> in Generika
Was ist der Unterschied zwischen &lt;out T&gt;und &lt;T&gt;? Beispielsweise: public interface IExample&lt;out T&gt; { ... } vs. public interface IExample&lt;T&gt; { ... }
188 c#  generics  covariance 


6
Übergeben Sie ein instanziiertes System.Type als Typparameter für eine generische Klasse
Der Titel ist irgendwie dunkel. Ich möchte wissen, ob dies möglich ist: string typeName = &lt;read type name from somwhere&gt;; Type myType = Type.GetType(typeName); MyGenericClass&lt;myType&gt; myGenericClass = new MyGenericClass&lt;myType&gt;(); Offensichtlich wird MyGenericClass wie folgt beschrieben: public class MyGenericClass&lt;T&gt; Im Moment beschwert sich der Compiler, dass 'Der Typ oder Namespace' myType …
181 c#  .net  generics 

4
Wie mache ich eine Java Generic-Methode statisch?
Das Folgende ist ein Ausschnitt darüber, wie eine generische Java-Klasse erstellt wird, um ein einzelnes Element an ein Array anzuhängen. Wie kann ich appendToArray zu einer statischen Methode machen? Das Hinzufügen von Statik zur Methodensignatur führt zu Kompilierungsfehlern. public class ArrayUtils&lt;E&gt; { public E[] appendToArray(E[] array, E item) { E[] …
172 java  generics 

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.