Je rencontre du code Java comme ceci: public interface Foo<E> {} public interface Bar<T> {} public interface Zar<?> {} Quelle est la différence entre les trois ci-dessus et comment appellent-ils ce type de déclarations de classe ou d'interface en Java?
I have few methods that returns different Generic Lists. Exists in .net any class static method or whatever to convert any list into a datatable? The only thing that i can imagine is use Reflection to do this. IF i have this: List<Whatever> whatever = new List<Whatever>(); (This next code …
Existe-t-il une réelle différence pratique entre a SortedList<TKey,TValue>et a SortedDictionary<TKey,TValue>? Y a-t-il des circonstances dans lesquelles vous utiliseriez spécifiquement l'un et pas l'autre?
J'ai une méthode générique qui a deux paramètres génériques. J'ai essayé de compiler le code ci-dessous mais cela ne fonctionne pas. S'agit-il d'une limitation .NET? Est-il possible d'avoir plusieurs contraintes pour différents paramètres? public TResponse Call<TResponse, TRequest>(TRequest request) where TRequest : MyClass, TResponse : MyOtherClass
Je lisais A Tour of Scala: Abstract Types . Quand est-il préférable d'utiliser des types abstraits? Par exemple, abstract class Buffer { type T val element: T } plutôt que les génériques, par exemple, abstract class Buffer[T] { val element: T }
Il y a une bonne discussion sur les génériques et ce qu'ils font vraiment dans les coulisses de cette question , donc nous savons tous que Vector<int[]>c'est un vecteur de tableaux entiers, et HashTable<String, Person>est un tableau dont les clés sont des chaînes et des valeurs Persons. Cependant, ce qui …
Par exemple, supposons que vous ayez deux classes: public class TestA {} public class TestB extends TestA{} J'ai une méthode qui retourne un List<TestA>et je voudrais convertir tous les objets de cette liste pour TestBque je me retrouve avec un List<TestB>.
J'ai une application qui utilise des DLL gérées. Une de ces DLL renvoie un dictionnaire générique: Dictionary<string, int> MyDictionary; Le dictionnaire contient des touches avec majuscules et minuscules. D'un autre côté, je reçois une liste de clés potentielles (chaîne) mais je ne peux pas garantir le cas. J'essaye d'obtenir la …
J'ai lu sur l'effacement de type Java sur le site Web d'Oracle . Quand l'effacement de type se produit-il? Au moment de la compilation ou de l'exécution? Quand la classe est chargée? Quand la classe est instanciée? De nombreux sites (y compris le tutoriel officiel mentionné ci-dessus) disent que l'effacement …
Pourquoi les génériques en Java fonctionnent-ils avec les classes mais pas avec les types primitifs? Par exemple, cela fonctionne bien: List<Integer> foo = new ArrayList<Integer>(); mais ce n'est pas autorisé: List<int> bar = new ArrayList<int>();
Je veux créer une instance d'un type que je spécifie dans une méthode générique que j'ai. Ce type a un certain nombre de constructeurs surchargés. J'aimerais pouvoir passer des arguments aux constructeurs, mais Activator.CreateInstance<T>() ne voit pas cela comme une option. Y a-t-il une autre façon de procéder?
J'ai une classe que je veux utiliser pour stocker des "propriétés" pour une autre classe. Ces propriétés ont simplement un nom et une valeur. Idéalement, ce que j'aimerais, c'est pouvoir ajouter des propriétés typées , de sorte que la "valeur" retournée soit toujours du type que je veux qu'elle soit. …
Si BaseFruitun constructeur accepte un int weight, puis-je instancier un fruit dans une méthode générique comme celle-ci? public void AddFruit<T>()where T: BaseFruit{ BaseFruit fruit = new T(weight); /*new Apple(150);*/ fruit.Enlist(fruitManager); } Un exemple est ajouté derrière les commentaires. Il semble que je ne puisse le faire que si je donne …
J'ai une boucle foreach qui lit une liste d'objets d'un type et produit une liste d'objets d'un type différent. On m'a dit qu'une expression lambda peut obtenir le même résultat. var origList = List<OrigType>(); // assume populated var targetList = List<TargetType>(); foreach(OrigType a in origList) { targetList.Add(new TargetType() {SomeValue = …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.