亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

java tostring方法重寫代碼示例

 更新時間:2017年10月11日 10:11:22   作者:譚墨墨快樂  
這篇文章主要介紹了java tostring方法重寫代碼示例,具有一定參考價值,需要的朋友可以了解下。

當需要將一個對象輸出到顯示器時,通常要調用他的toString()方法,將對象的內容轉換為字符串.java中的所有類默認都有一個toString()方法

默認情況下 System.out.println(對象名)或者System.out.println(對象名.toString())輸出的是此對象的類名和此對象對應內存的首地址 如果想自定義輸出信息必須重寫toString()方法

注意事項

1.必須被聲明為public

2.返回類型為String

3.方法的名稱必須為toString,且無參數(shù)

4.方法體中不要使用輸出方法System.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; 
} 

輸出為:

[Item@8c9e3a56, Item@d780c206, Item@39c021ba]
[Item@39c021ba, Item@8c9e3a56, Item@d780c206]

Item重載toString()方法后:

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; 
} 

輸出為:

[[description=Toaster,partNumber=1234], [description=Widget,partNumber=4562], [description=Modem,partNumber=9912]]
[[description=Modem,partNumber=9912], [description=Toaster,partNumber=1234], [description=Widget,partNumber=4562]]

總結

以上就是本文關于java tostring方法重寫代碼示例的全部內容,希望對大家有所幫助。感興趣的朋友可以參閱:Java系統(tǒng)的高并發(fā)解決方法詳解、Java編程倒計時實現(xiàn)方法示例、Java AtomicInteger類的使用方法詳解等。有問題您可以留言,歡迎大家交流討論。

相關文章

  • SpringBoot中必須掌握的常用注解小結

    SpringBoot中必須掌握的常用注解小結

    Spring?Boot?提供了大量的注解,用于簡化配置和加速程序開發(fā),這篇文章主要來和大家Spring?Boot中的常用注解的具體使用,希望對大家有所幫助
    2024-11-11
  • java 分轉元與元轉分實現(xiàn)操作

    java 分轉元與元轉分實現(xiàn)操作

    這篇文章主要介紹了java 分轉元與元轉分實現(xiàn)操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • 從內存地址解析Java的static關鍵字的作用

    從內存地址解析Java的static關鍵字的作用

    這篇文章主要介紹了從內存地址解析Java的static關鍵字的作用,包括靜態(tài)成員變量和靜態(tài)方法等重要內容,需要的朋友可以參考下
    2015-10-10
  • springboot 參數(shù)格式校驗操作

    springboot 參數(shù)格式校驗操作

    這篇文章主要介紹了springboot 參數(shù)格式校驗操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • java哈希算法HashMap經典面試題目匯總解析

    java哈希算法HashMap經典面試題目匯總解析

    這篇文章主要為大家介紹了java哈希算法HashMap的經典面試題目匯總及問題解析,幫助大家徹底征服面試官,實現(xiàn)薪資自由,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2022-03-03
  • 使用jdk7的nio2操作文件拷貝和剪切示例

    使用jdk7的nio2操作文件拷貝和剪切示例

    使用jdk7的NIO2進行文件或文件夾的拷貝移動操作??梢宰詣觿?chuàng)建路徑,差異化更新文件,簡單的出錯重連機制
    2014-01-01
  • Java 接口和抽象類的區(qū)別詳解

    Java 接口和抽象類的區(qū)別詳解

    在面向對象編程中,抽象類和接口是兩個經常被用到的語法概念,是面向對象四大特性,以及很多設計模式、設計思想、設計原則編程實現(xiàn)的基礎。本文將主要講解二者的區(qū)別
    2021-05-05
  • Springboot使用Maven占位符@替換不生效問題及解決

    Springboot使用Maven占位符@替換不生效問題及解決

    這篇文章主要介紹了Springboot使用Maven占位符@替換不生效問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • Eclipse 項目出現(xiàn)錯誤(紅色嘆號)解決方法

    Eclipse 項目出現(xiàn)錯誤(紅色嘆號)解決方法

    這篇文章主要介紹了Eclipse 項目出現(xiàn)錯誤(紅色嘆號)解決方法的相關資料,需要的朋友可以參考下
    2017-06-06
  • Java超詳細梳理異常處理機制

    Java超詳細梳理異常處理機制

    異常就是不正常,比如當我們身體出現(xiàn)了異常我們會根據(jù)身體情況選擇喝開水、吃藥、看病、等?異常處理方法。?java異常處理機制是我們java語言使用異常處理機制為程序提供了錯誤處理的能力,程序出現(xiàn)的錯誤,程序可以安全的退出,以保證程序正常的運行等
    2022-04-04

最新評論