Mockito ofrece: when(mock.process(Matchers.any(List.class))); ¿Cómo evitar la advertencia si processtoma un List<Bar>en su
¿Puedo pasar un método con un parámetro de salida como Func? public IList<Foo> FindForBar(string bar, out int count) { } // somewhere else public IList<T> Find(Func<string, int, List<T>> listFunction) { } Func necesita un tipo para que out no se compile allí, y llamar a...
¿Hay alguna manera de hacer que este método sea genérico para que pueda devolver una cadena, bool, int o double? En este momento, está devolviendo una cadena, pero si puede encontrar "verdadero" o "falso" como el valor de configuración, me gustaría devolver un bool, por ejemplo. public static...
¿Hay alguna manera de obtener la siguiente declaración de función? public bool Foo<T>() where T : interface; es decir. donde T es un tipo de interfaz (similar a where T : classy struct). Actualmente me he conformado con: public bool Foo<T>() where T : IBase; Donde IBase se define...
Tengo una interfaz genérica public interface Consumer<E> { public void consume(E e); } Tengo una clase que consume dos tipos de objetos, por lo que me gustaría hacer algo como: public class TwoTypesConsumer implements Consumer<Tomato>, Consumer<Apple> { public void...
Sé que Java implementa el polimorfismo paramétrico (genéricos) con borrado. Entiendo lo que es borrar. Sé que C # implementa polimorfismo paramétrico con la reificación. Sé que eso puede hacerte escribir public void dosomething(List<String> input) {} public void dosomething(List<Int>...
De Java efectivo por Joshua Bloch, Las matrices difieren del tipo genérico en dos formas importantes. Las primeras matrices son covariantes. Los genéricos son invariantes. Covariante simplemente significa que si X es un subtipo de Y, entonces X [] también será un subtipo de Y []. Las matrices son...
Puedes ver lo que intento (pero no puedo) hacer con el siguiente código: protected T GetObject() { return new T(); } Cualquier ayuda sería muy apreciada. EDITAR: El contexto fue el siguiente. Estaba jugando con una clase de controlador personalizado para todos los controladores, con métodos...
Tengo uno del ArrayList<String>que me gustaría devolver una copia. ArrayListtiene un método de clonación que tiene la siguiente firma: public Object clone() Después de llamar a este método, ¿cómo devuelvo el objeto devuelto
Entonces tengo una lista genérica, y un oldIndexy un newIndexvalor. Quiero mover el elemento a oldIndex, a newIndex... lo más simple posible. ¿Alguna sugerencia? Nota El elemento debe terminar entre los elementos en (newIndex - 1)y newIndex antes de ser
Tengo una lista que se declara así: List<? extends Number> foo3 = new ArrayList<Integer>(); Traté de agregar 3 a foo3. Sin embargo, recibo un mensaje de error como este: The method add(capture#1-of ? extends Number) in the type List<capture#1-of ? extends Number> is not...
¿Podría alguien explicar por qué esto funciona en C # .NET 2.0: Nullable<DateTime> foo; if (true) foo = null; else foo = new DateTime(0); ... pero esto no: Nullable<DateTime> foo; foo = true ? null : new DateTime(0); El último formulario me da un error de compilación "El tipo...
Java tiene genéricos y C ++ proporciona un modelo de programación muy sólido con templates. Entonces, ¿cuál es la diferencia entre los genéricos C ++ y
Probablemente esto no sea posible, pero tengo esta clase: public class Metadata<DataType> where DataType : struct { private DataType mDataType; } Hay más, pero seamos simples. El tipo genérico (DataType) está limitado a los tipos de valor mediante la instrucción where. Lo que quiero hacer...
Esta es una versión simplificada del código en cuestión, una clase genérica usa otra clase con parámetros de tipo genérico y necesita pasar uno de los tipos genéricos a un método con parámetros varargs: class Assembler<X, Y> { void assemble(X container, Y... args) { ... } } class...
Pensé que entendía bastante bien los genéricos de Java, pero luego encontré lo siguiente en java.lang.Enum: class Enum<E extends Enum<E>> ¿Alguien podría explicar cómo interpretar este tipo de parámetro? Puntos de bonificación por proporcionar otros ejemplos de dónde se podría usar un...
Estoy tratando de mantener una lista de elementos en una colección con una clave de mi elección. En Java, simplemente usaría Map de la siguiente manera: class Test { Map<Integer,String> entities; public String getEntity(Integer code) { return this.entities.get(code); } } ¿Hay una...
Las enumeraciones de Java son geniales. Así son los genéricos. Por supuesto, todos conocemos las limitaciones de este último debido al tipo de borrado. Pero hay una cosa que no entiendo, ¿por qué no puedo crear una enumeración como esta: public enum MyEnum<T> { LITERAL1<String>,...
Siguiendo con esta pregunta , ¿alguien puede explicar lo siguiente en Scala: class Slot[+T] (var some: T) { // DOES NOT COMPILE // "COVARIANT parameter in CONTRAVARIANT position" } Entiendo la distinción entre +Ty Ten la declaración de tipo (se compila si la uso T). Pero entonces, ¿cómo se...
¿Cuál es la diferencia entre <? super E>y <? extends E>? Por ejemplo, cuando echas un vistazo a la clase, java.util.concurrent.LinkedBlockingQueuehay la siguiente firma para el constructor: public LinkedBlockingQueue(Collection<? extends E> c) y para uno por el método: public...