Preguntas etiquetadas con generics

Los genéricos son una forma de polimorfismo paramétrico que se encuentra en una variedad de lenguajes, incluidos los lenguajes .NET, Java, Swift y Rust.


7
¿Qué es exactamente una "clase especial"?
Después de no poder compilar algo como lo siguiente: public class Gen<T> where T : System.Array { } con el error Una restricción no puede ser una clase especial `System.Array ' Empecé a preguntarme, ¿qué es exactamente una "clase especial"? Las personas a menudo parecen tener el mismo tipo de …

5
devolver un objeto vacío
¿Cuál es la forma correcta de devolver un Voidtipo, cuando no es un primitivo? P.ej. Actualmente uso null como se muestra a continuación. interface B<E>{ E method(); } class A implements B<Void>{ public Void method(){ // do something return null; } }


2
Java sin marcar: creación de matriz genérica sin marcar para el parámetro varargs
He configurado Netbeans para que muestre advertencias sin marcar en mi código Java, pero no entiendo el error en las siguientes líneas: private List<String> cocNumbers; private List<String> vatNumbers; private List<String> ibans; private List<String> banks; ... List<List<String>> combinations = Utils.createCombinations(cocNumbers, vatNumbers, ibans); Da: [unchecked] unchecked generic array creation for varargs parameter …

4
Expresión Lambda y método genérico
Supongamos que tengo una interfaz genérica: interface MyComparable<T extends Comparable<T>> { public int compare(T obj1, T obj2); } Y un método sort: public static <T extends Comparable<T>> void sort(List<T> list, MyComparable<T> comp) { // sort the list } Puedo invocar este método y pasar una expresión lambda como argumento: List<String> …
111 java  generics  lambda  java-8 



1
¿Cuál es la diferencia entre '&' y ',' en los genéricos de Java?
Mientras leía el tutorial oficial de Java sobre genéricos, descubrí que puede restringir el argumento de tipo (en este caso es T) para extender una clase y / o más interfaces con el operador 'y' ( &) de esta manera: <T extends MyClass & Serializable> Reemplacé el &con ,(por error …
110 java  generics 



5
Kotlin: Cómo trabajar con List casts: Sin marcar Cast: kotlin.collections.List <Kotlin.Any?> To kotlin.colletions.List <Waypoint>
Quiero escribir una función que devuelva todos los elementos de un elemento Listque no sea el primero ni el último (un punto intermedio). La función obtiene un genérico List&lt;*&gt;como entrada. Solo se debe devolver un resultado si los elementos de la lista son del tipo Waypoint: fun getViaPoints(list: List&lt;*&gt;): List&lt;Waypoint&gt;? …
108 list  generics  casting  kotlin 


3
Jackson y referencia de tipo genérico
Quiero usar la biblioteca jackson json para un método genérico de la siguiente manera: public MyRequest&lt;T&gt; tester() { TypeReference&lt;MyWrapper&lt;T&gt;&gt; typeRef = new TypeReference&lt;MyWrapper&lt;T&gt;&gt;(); MyWrapper&lt;T&gt; requestWrapper = (MyWrapper&lt;T&gt;) JsonConverter.fromJson(jsonRequest, typeRef); return requestWrapper.getRequest(); } ... public class MyWrapper&lt;T&gt; { private MyRequest&lt;T&gt; request; public MyRequest&lt;T&gt; getRequest() { return request; } public void setRequest(MyRequest&lt;T&gt; …
107 java  json  generics  jackson 

8
Llamar a un método estático en un parámetro de tipo genérico
Esperaba hacer algo como esto, pero parece ser ilegal en C #: public Collection MethodThatFetchesSomething&lt;T&gt;() where T : SomeBaseClass { return T.StaticMethodOnSomeBaseClassThatReturnsCollection(); } Recibo un error en tiempo de compilación: "'T' es un 'parámetro de tipo', que no es válido en el contexto dado". Dado un parámetro de tipo genérico, …
107 c#  generics 

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.