Perguntas com a marcação «generics»

Os genéricos são uma forma de polimorfismo paramétrico encontrado em uma variedade de linguagens, incluindo linguagens .NET, Java, Swift e Rust.

20
Como classificar uma lista <T> por uma propriedade no objeto
Eu tenho uma classe chamada Orderque tem propriedades tais como OrderId, OrderDate, Quantity, e Total. Eu tenho uma lista desta Orderclasse: List&lt;Order&gt; objListOrder = new List&lt;Order&gt;(); GetOrderList(objListOrder); // fill list of orders Agora, quero classificar a lista com base em uma propriedade do Orderobjeto, por exemplo, preciso classificá-la pela data …
1249 c#  generics  list  sorting 

21
Criar método genérico que restringe T a um enum
Estou construindo uma função para estender o Enum.Parseconceito que Permite que um valor padrão seja analisado caso um valor de Enum não seja encontrado Não diferencia maiúsculas de minúsculas Então eu escrevi o seguinte: public static T GetEnumFromString&lt;T&gt;(string value, T defaultValue) where T : Enum { if (string.IsNullOrEmpty(value)) return defaultValue; …

30
Como criar uma matriz genérica em Java?
Devido à implementação de genéricos Java, você não pode ter um código como este: public class GenSet&lt;E&gt; { private E a[]; public GenSet() { a = new E[INITIAL_ARRAY_LENGTH]; // error: generic array creation } } Como posso implementar isso mantendo a segurança do tipo? Eu vi uma solução nos fóruns …

8
Como uso a reflexão para chamar um método genérico?
Qual é a melhor maneira de chamar um método genérico quando o parâmetro type não é conhecido no tempo de compilação, mas é obtido dinamicamente no tempo de execução? Considere o seguinte código de exemplo - dentro do Example()método, qual é a maneira mais concisa de chamar GenericMethod&lt;T&gt;()usando o Typearmazenado …
1071 c#  .net  generics  reflection 

17
List <Dog> é uma subclasse da List <Animal>? Por que os genéricos Java não são implicitamente polimórficos?
Estou um pouco confuso sobre como os genéricos Java lidam com herança / polimorfismo. Suponha a seguinte hierarquia - Animal (Pai) Cão - Gato (Crianças) Então, suponha que eu tenha um método doSomething(List&lt;Animal&gt; animals). Por todas as regras de herança e polimorfismo, eu assumiria que a List&lt;Dog&gt; é a List&lt;Animal&gt;e …





23
Como abordar avisos de elenco não verificados?
O Eclipse está me enviando um aviso do seguinte formulário: Segurança de tipo: elenco não verificado de Object para HashMap Isso é de uma chamada para uma API que eu não tenho controle sobre o que retorna Object: HashMap&lt;String, String&gt; getItems(javax.servlet.http.HttpSession session) { HashMap&lt;String, String&gt; theHash = (HashMap&lt;String, String&gt;)session.getAttribute("attributeKey"); return …
611 java  generics  warnings 


19
Como faço para o método retornar tipo genérico?
Considere este exemplo (típico nos livros de POO): Eu tenho uma Animalaula, onde cada um Animalpode ter muitos amigos. E subclasses como Dog, etc Duck, Mouseque adicionam comportamento específico bark(), quack()etc. Aqui está a Animalturma: public class Animal { private Map&lt;String,Animal&gt; friends = new HashMap&lt;&gt;(); public void addFriend(String name, Animal …

27
Criar instância do tipo genérico em Java?
É possível criar uma instância de um tipo genérico em Java? Estou pensando com base no que vi que a resposta é no( devido ao apagamento do tipo ), mas eu estaria interessado se alguém puder ver algo que estou perdendo: class SomeContainer&lt;E&gt; { E createContents() { return what??? } …
576 java  generics 

13
Como posso retornar NULL de um método genérico em c #?
Eu tenho um método genérico com esse código (fictício) (sim, eu sei que IList tem predicados, mas meu código não está usando IList, mas alguma outra coleção, de qualquer maneira isso é irrelevante para a pergunta ...) static T FindThing&lt;T&gt;(IList collection, int id) where T : IThing, new() { foreach …
546 c#  generics 

7
Por que o C # proíbe tipos de atributos genéricos?
Isso causa uma exceção em tempo de compilação: public sealed class ValidatesAttribute&lt;T&gt; : Attribute { } [Validates&lt;string&gt;] public static class StringValidation { } Sei que o C # não suporta atributos genéricos. No entanto, depois de muito pesquisar no Google, parece que não consigo encontrar o motivo. Alguém sabe por …

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.