0
votes

Puis-je utiliser "Liste liée" lors de la création d'exemples en Java?

Puis-je utiliser LinkedList lorsque je crée des instances?

Exemple:

J'ai Main classe et une classe employé

main.Class: xxx

Lorsque nous créons des instances, effectuez généralement le code comme celui-ci.

mais Je me demande s'il y a un moyen de créer une instance à l'aide de la liste liée.

comme ceci: xxx


2 commentaires

Oui, une liste liée (ou une autre collection Java) peut contenir une collection d'objets employé . Découvrez le sentier Oracle sur les collections.


Sachez que dans presque tous les cas en Java, en utilisant arraylist a plus de sens que d'utiliser linkedlist . ArrayList utilise moins de mémoire et est généralement plus rapide. Voir aussi Quand utiliser LinkedList Over Arraylist en Java?


3 Réponses :


0
votes

Vous venez d'instancier l'élément lorsque vous l'ajoutez à la liste

LinkedList<Employee> alist = new LinkedList<>();
 alist.add(new Employee());


5 commentaires

De rien! S'il vous plaît assurez-vous de marquer la réponse comme correcte si vous pensez que c'est ^^


Vous ne pouvez pas ajouter d'instance de Employee à n'importe quelle liste ...


@THILLILLINGCHASE s'il vous plaît être précis: de quelle manière ça ne marche pas? Le problème est probablement que vous créez un linkedlist , qui ne peut pas contenir d'employé ...


Vous avez déclaré que la LinkedList en tant que conteneur de . L'employé n'est probablement pas une chaîne, alors ajoutez-la, ou changez à .


Vérifiez l'addition que j'ai fait sur la réponse. Vous devez faire la liste liée de l'employé, pas de chaîne.



1
votes

Vous avez créé une liste , qui ne peut pas contenir des instances de employé , mais peut-être leur nom ...

Il semble que tu veux quelque chose comme tu veux Ceci: xxx

si vous avez une liste list et un employé de classe qui ressemble à celui-ci < / p> xxx

alors vous pouvez créer une instance de employé pour chaque nom dans la liste des noms: xxx


0 commentaires

0
votes
List<Employee> employees = new LinkedList<>();

employees.add(new Employee(..., ..., ...));

Employee empMarta = new Employee("Marta", "Green", 24);

employees.add(empMarta);

Maybe it's better to use some SET interface implementation (Set has unique list of elements)?
For Employee class you should override equals() and hashCode() methods;
And the main thing: if you decide to use List, then you should answer to the question "What is the most frequent operation You plan to perform (add, search, delete)?". Based on answer you should choose between ArrayList and LinkedList.

0 commentaires