激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java Objects工具類原理及用法詳解

Java Objects工具類原理及用法詳解

2020-08-04 23:49陳彥斌 Java教程

這篇文章主要介紹了Java Objects工具類原理及用法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

Objects工具類

jdk 1.7引進的工具類,都是靜態調用的方法,jdk 1.8新增了部分方法

重點方法

equals

用于字符串和包裝對象的比較,先比較內存地址,再比較值

deepEquals

數組的比較,先比較內存地址,再比較值,如String、char、byte、int數組,或者包裝類型Integer等數組

hashCode

返回對象的hashCode,若傳入的為null,則返回0

hash

傳入可變參數的所有值得hashCode的總和,底層用Arrays.hashCode

可變參數

Java Objects工具類原理及用法詳解

重寫HashCode和Equals

HashCode方法

  頂級類Object里面的方法,所有類都是繼承Object的,返回值int類型

  根據一定的hash規則(存儲地址,字段,或者長度等),映射成一個數值,即散列值

Equals方法

  頂級類Object里面的方法,所有類都是繼承Object的,返回值boolean類型

  根據自定義的匹配規則,用于匹配兩個對象是否一樣,一般邏輯

//判斷地址是否?樣
//?空判斷和class類型判斷
//強轉
//對象??的字段??匹配

重寫規則

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class User {
  private int age;
  private String name;
  private Date time;
 
  // 省略setter和getter?法
  @Override
  public boolean equals(Object o) {
    if (this == o)
      return true;
    if (o == null || getClass() != o.getClass())
      return false;
    User user = (User) o;
    return age == user.age && Objects.equals(name, user.name) && Objects.equals(time, user.time);
  }
 
  @Override
  public int hashCode() {
    return Objects.hash(age, name, time);
  }
}

問題:當向集合中插入對象時,如何判別在集合中是否已經存在該對象,比如Set確保存儲對象的唯一,并判斷是不是同一個對象呢?

  • 依據hashCode和equals進行判斷,所以Set存儲的對象必須重寫這兩個方法
  • 判斷兩個對象是否一樣,首先判斷插入obj的hashCode值是否存在,hashCode值不存在則直接插入集合,值存在則還需要判斷equals方法判斷對象是否相等

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://www.cnblogs.com/chenyanbin/p/13407269.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 免费特黄| 欧美精品毛片 | 欧美日韩电影 | a集毛片| 牛牛a级毛片在线播放 | 99综合视频 | 久久99久久98精品免观看软件 | 欧美激情综合在线 | 亚洲第一精品在线 | 伊人一二三四区 | jizzzxxxxhd| 九九爱视频| 天堂二区| 色淫视频 | 娇喘在线| 2021年无线乱码播放高清完整 | 男女羞羞的视频 | 精品中文字幕久久久久四十五十骆 | 性生活香蕉视频 | 久久国产成人精品国产成人亚洲 | 成年人视频免费 | 免费人成在线播放 | 牛牛视频在线 | 国产一区二区高清在线 | 女人裸体让男人桶全过程 | 欧美三级美国一级 | 黄色网电影| 日韩欧美视频一区二区三区 | 日日碰日日操 | 亚洲爱爱网站 | 久久精品视频1 | 国产乱色精品成人免费视频 | 国产一级桃视频播放 | 久久96国产精品久久秘臀 | 国产1区2区3区中文字幕 | 国产三级国产精品国产普男人 | 中文字幕极速在线观看 | 国产午夜亚洲精品理论片大丰影院 | 老a影视网站在线观看免费 欧美日韩成人一区二区 | 在线观看视频日本 | 污片视频网站 |