簡體   English   中英

netbeans可以為映射自動生成正確的hashCode()和equals()方法嗎?

[英]Can netbeans auto-generate correct hashCode() and equals() methods for a mapping?

我正在創建兩個對象類的多對多映射。 我是否需要編寫hashCode()equals()方法; 如果是這樣,netbeans會自動生成代碼幫助嗎?

是的,它可以!

只需在創建對象的類中單擊鼠標右鍵,然后選擇插入代碼。 標題為“Generate”的小菜單將彈出各種選項,其中包括equals()和hashCode(),選擇它和presto,NetBeans為您生成代碼覆蓋。 測試equals方法,這次它會工作。

NB。 當您選擇“equals()和hashCode()”時,會出現一個對話框,只需選中兩側的框以查找您想要處理的所有變量。 見下圖:

在NetBeans上生成equals()和hashCode

是的,您可以使用IDE生成的哈希碼來比較兩個實例。 你的情況就足夠了,更重要的是equals方法,注意相等的參數。 自動生成的代碼將比較所有參數,但您可能只需要很少的參數來唯一地識別它。

假設您需要查看從DB讀取的記錄是否屬於同一實體,只需比較equals方法中的主鍵。 選擇一個平等標准完全由你自行決定。

在NetBeans 8.2中,右鍵單擊菜單選項的名稱為“插入代碼”,右鍵單擊該類或按Alt-Insert后選擇“equals and hashCode ...”

插入代碼

equals和hashCode

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM