Perguntas com a marcação «generics»

147
Qual é a diferença entre <? super E> e <? estende E>?

Qual é a diferença entre <? super E>e <? extends E>? Por exemplo, quando você analisa a classe, java.util.concurrent.LinkedBlockingQueuehá a seguinte assinatura para o construtor: public LinkedBlockingQueue(Collection<? extends E> c) e uma para o método: public int...

146
O valor do tipo 'T' não pode ser convertido em

É provável que seja uma pergunta iniciante, mas o Google surpreendentemente não forneceu uma resposta. Eu tenho esse método bastante artificial T HowToCast<T>(T t) { if (typeof(T) == typeof(string)) { T newT1 = "some text"; T newT2 = (string)t; } return t; } Vindo de um background...

139
O que <T> (colchetes angulares) significa em Java?

Atualmente, estou estudando Java e recentemente fui atingido por colchetes angulares (<>). O que exatamente eles significam? public class Pool<T>{ public interface PoolFactory<T>{ public T createObject(); } this.freeObjects = new ArrayList<T>(maxsize) } O que...

139
Convertendo uma lista genérica em uma sequência CSV

Eu tenho uma lista de valores inteiros (Lista) e gostaria de gerar uma seqüência de valores delimitados por vírgula. Todos os itens da lista são gerados em uma única lista delimitada por vírgula. Meus pensamentos ... 1. passar a lista para um método. 2. Use stringbuilder para iterar a lista e...

137
Qual é a diferença entre ? e objeto em Java genéricos?

Estou usando o Eclipse para me ajudar a limpar algum código para usar os genéricos Java corretamente. Na maioria das vezes, ele faz um excelente trabalho de inferir tipos, mas há alguns casos em que o tipo inferido deve ser o mais genérico possível: Objeto. Mas o Eclipse parece estar me dando uma...

135
Java: Instância de e genéricos

Antes de procurar na minha estrutura de dados genérica o índice de um valor, gostaria de ver se até mesmo uma instância do tipo thisfoi parametrizada. Mas o Eclipse reclama quando faço isso: @Override public int indexOf(Object arg0) { if (!(arg0 instanceof E)) { return -1; } Esta é a mensagem...

134
Converter objeto em tipo genérico para retornar

Existe uma maneira de converter um objeto para retornar o valor de um método? Eu tentei dessa maneira, mas deu uma exceção de tempo de compilação na parte "instanceof": public static <T> T convertInstanceOfObject(Object o) { if (o instanceof T) { return (T) o; } else { return null;...