Maison > Java > javaDidacticiel > Exemple de code pour remplacer la méthode tostring en Java

Exemple de code pour remplacer la méthode tostring en Java

黄舟
Libérer: 2017-10-12 10:41:56
original
2299 Les gens l'ont consulté

Cet article présente principalement l'exemple de code de réécriture de la méthode Java tostring, qui a une certaine valeur de référence. Les amis qui en ont besoin peuvent en apprendre davantage.

Lorsqu'un objet doit être affiché, sa méthode toString() est généralement appelée pour convertir le contenu de l'objet en chaîne. Toutes les classes en Java ont une méthode toString() par défaut

Par défaut, System.out.println (nom de l'objet) ou System.out.println (nom de l'objet.toString()) renvoie le nom de classe de cet objet et la première adresse de la mémoire correspondant à celui-ci. Si vous souhaitez que les informations de sortie personnalisées doivent remplacer la méthode toString()


Notes

Doit être déclarée publique

.

2. Le type de retour est String


3 Le nom de la méthode doit être toString et n'a aucun paramètre


4. la méthode de sortie System dans le corps de la méthode out.println()


import java.util.*; 
public class TreeSetTest { 
  /** 
   * @param args 
   */ 
  public static void main(String[] args) { 
    // TODO Auto-generated method stub 
    SortedSet<Item> parts=new TreeSet<Item>(); 
    parts.add(new Item("Toaster", 1234)); 
    parts.add(new Item("Widget", 4562)); 
    parts.add(new Item("Modem", 9912)); 
    System.out.println(parts); 
    SortedSet<Item> sortByDescription=new TreeSet<Item>(new  
        Comparator<Item>() 
        { 
          public int compare(Item a, Item b) 
          { 
            String descrA=a.getDescription(); 
            String descrB=b.getDescription(); 
            return descrA.compareTo(descrB); 
          } 
        }); 
    sortByDescription.addAll(parts); 
    System.out.println(sortByDescription); 
  } 
} 
class Item implements Comparable<Item> 
{ 
  public Item(String aDescription, int aPartNumber) 
  { 
    description=aDescription; 
    partNumber=aPartNumber; 
  } 
  public String getDescription() 
  { 
    return description; 
  } 
  public boolean equals(Object otherObject) 
  { 
    if(this==otherObject) 
      return true; 
    if(otherObject==null) 
    { 
      return false; 
    } 
    if (getClass()!=otherObject.getClass()) 
    { 
      return false; 
    } 
    Item other=(Item)otherObject; 
    return description.equals(other.description)&& 
        partNumber==other.partNumber; 
  } 
  public int hashCode() 
  { 
    return 13*description.hashCode()+17*partNumber; 
  } 
  public int compareTo(Item other) 
  { 
    return partNumber-other.partNumber; 
  } 
  private String description; 
  private int partNumber; 
}
Copier après la connexion
La sortie est :



[Item@8c9e3a56, Item@d780c206, Item@39c021ba]
[Item@39c021ba, Item@8c9e3a56, Item@d780c206]
Copier après la connexion
Item<🎜 ​​>Après avoir surchargé la méthode toString()

 :


Le résultat est :
import java.util.*; 
public class TreeSetTest { 
  /** 
   * @param args 
   */ 
  public static void main(String[] args) { 
    // TODO Auto-generated method stub 
    SortedSet<Item> parts=new TreeSet<Item>(); 
    parts.add(new Item("Toaster", 1234)); 
    parts.add(new Item("Widget", 4562)); 
    parts.add(new Item("Modem", 9912)); 
    System.out.println(parts); 
    SortedSet<Item> sortByDescription=new TreeSet<Item>(new  
        Comparator<Item>() 
        { 
          public int compare(Item a, Item b) 
          { 
            String descrA=a.getDescription(); 
            String descrB=b.getDescription(); 
            return descrA.compareTo(descrB); 
          } 
        }); 
    sortByDescription.addAll(parts); 
    System.out.println(sortByDescription); 
  } 
} 
class Item implements Comparable<Item> 
{ 
  public Item(String aDescription, int aPartNumber) 
  { 
    description=aDescription; 
    partNumber=aPartNumber; 
  } 
  public String getDescription() 
  { 
    return description; 
  } 
  public String toString() 
  { 
    return "[description="+description 
        +",partNumber="+partNumber+"]"; 
  } 
  public boolean equals(Object otherObject) 
  { 
    if(this==otherObject) 
      return true; 
    if(otherObject==null) 
    { 
      return false; 
    } 
    if (getClass()!=otherObject.getClass()) 
    { 
      return false; 
    } 
    Item other=(Item)otherObject; 
    return description.equals(other.description)&& 
        partNumber==other.partNumber; 
  } 
  public int hashCode() 
  { 
    return 13*description.hashCode()+17*partNumber; 
  } 
  public int compareTo(Item other) 
  { 
    return partNumber-other.partNumber; 
  } 
  private String description; 
  private int partNumber; 
}
Copier après la connexion



[[description=Toaster,partNumber=1234], [description=Widget,partNumber=4562], [description=Modem,partNumber=9912]]
[[description=Modem,partNumber=9912], [description=Toaster,partNumber=1234], [description=Widget,partNumber=4562]]
Copier après la connexion
Résumé

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!

Étiquettes associées:
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal