Maison > Java > javaDidacticiel > Comment puis-je renvoyer efficacement plusieurs objets à partir d'une méthode Java ?

Comment puis-je renvoyer efficacement plusieurs objets à partir d'une méthode Java ?

Mary-Kate Olsen
Libérer: 2024-12-27 03:29:14
original
654 Les gens l'ont consulté

How Can I Efficiently Return Multiple Objects from a Java Method?

Renvoi de plusieurs objets à partir de méthodes Java

En Java, les méthodes renvoient généralement une seule valeur. Cependant, il peut arriver que vous souhaitiez renvoyer plusieurs objets. Bien qu'il soit possible d'utiliser une HashMap ou une ArrayList pour y parvenir, ces approches peuvent s'avérer lourdes et peu élégantes.

Une meilleure solution : les objets nommés

Une solution plus efficace et L'approche modulaire consiste à créer une classe qui encapsule les multiples objets et renvoie une instance de cette classe. Par exemple, si vous souhaitez renvoyer une liste d'objets et une chaîne de leurs noms séparés par des virgules, vous pouvez définir une classe NamedObject comme celle-ci :

public class NamedObject<T> {
  public final String name;
  public final T object;

  public NamedObject(String name, T object) {
    this.name = name;
    this.object = object;
  }
}
Copier après la connexion

Avec cette classe, vous pouvez ensuite renvoyer une liste de NamedObject objets :

public List<NamedObject<MyObject>> getObjects() {
  return List.of(
    new NamedObject<>("Object 1", myObject1),
    new NamedObject<>("Object 2", myObject2)
  );
}
Copier après la connexion

Options alternatives

En plus des objets nommés, voici quelques autres options pour renvoyer plusieurs objets :

  • Renvoyer une paire d'objets Key, Value pour le nom et l'objet.
  • Créez une classe de tuple personnalisée qui contient plusieurs field.
  • Utilisez ImmutableListMultimap de Google Guava pour une implémentation spécifique.

Conclusion

Le retour de plusieurs objets à partir de méthodes Java nécessite un examen attentif. Les objets nommés offrent une solution simple et extensible qui encapsule plusieurs objets dans une seule classe. En choisissant l'approche appropriée, vous pouvez créer des méthodes qui renvoient des structures de données complexes de manière élégante et efficace.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal