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
obtener un enumerador genérico de una matriz
En C #, ¿cómo se obtiene un enumerador genérico de una matriz determinada? En el código siguiente, MyArrayhay una matriz de MyTypeobjetos. Me gustaría obtener MyIEnumeratorde la manera que se muestra, pero parece que obtengo un enumerador vacío (aunque lo he confirmado MyArray.Length > 0). MyType[] MyArray = ... ; …

8
Lanzar objeto a T
Estoy analizando un archivo XML con la XmlReaderclase en .NET y pensé que sería inteligente escribir una función de análisis genérico para leer diferentes atributos de forma genérica. Se me ocurrió la siguiente función: private static T ReadData<T>(XmlReader reader, string value) { reader.MoveToAttribute(value); object readData = reader.ReadContentAsObject(); return (T)readData; } …
91 c#  generics  casting 



9
No se puede convertir implícitamente el tipo 'Int' a 'T'
Puedo llamar Get<int>(Stat);oGet<string>(Name); Pero al compilar obtengo: No se puede convertir implícitamente el tipo 'int' a 'T' y lo mismo para string. public T Get<T>(Stats type) where T : IConvertible { if (typeof(T) == typeof(int)) { int t = Convert.ToInt16(PlayerStats[type]); return t; } if (typeof(T) == typeof(string)) { string t …
90 c#  generics 


4
¿Cuál es el punto de la clase opcional de Guava?
Recientemente leí sobre esto y vi a personas que usaban esta clase, pero en casi todos los casos, el uso también nullhabría funcionado, si no de manera más intuitiva. ¿Alguien puede dar un ejemplo concreto donde Optionalse lograría algo que nullno se pudo o de una manera mucho más limpia? …
89 java  generics  guava 

3
Cómo utilizar el protocolo genérico como tipo de variable
Digamos que tengo un protocolo: public protocol Printable { typealias T func Print(val:T) } Y aquí está la implementación class Printer<T> : Printable { func Print(val: T) { println(val) } } Mi expectativa era que debería poder usar la Printablevariable para imprimir valores como este: let p:Printable = Printer<Int>() p.Print(67) …
89 ios  xcode  generics  swift 




15
Ordenar un IList en C #
Así que hoy me encontré con un problema interesante. Tenemos un servicio web WCF que devuelve un IList. No es gran cosa hasta que quise arreglarlo. Resulta que la interfaz IList no tiene un método de ordenación integrado. Terminé usando el ArrayList.Adapter(list).Sort(new MyComparer()) método para resolver el problema, pero me …
86 c#  generics  sorting  ilist 


14
En C #, ¿por qué no se puede almacenar un objeto List <string> en una variable List <object>?
Parece que un objeto List no se puede almacenar en una variable List en C #, y ni siquiera se puede convertir explícitamente de esa manera. List&lt;string&gt; sl = new List&lt;string&gt;(); List&lt;object&gt; ol; ol = sl; da como resultado No se puede convertir implícitamente el tipo System.Collections.Generic.List&lt;string&gt;aSystem.Collections.Generic.List&lt;object&gt; Y entonces... List&lt;string&gt; …

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.