Java хэл дээр хэшинг юунд ашигладаг вэ?
Java хэл дээр хэшинг юунд ашигладаг вэ?

Видео: Java хэл дээр хэшинг юунд ашигладаг вэ?

Видео: Java хэл дээр хэшинг юунд ашигладаг вэ?
Видео: Java дахь Set болон HashSet - Бүрэн заавар 2024, Дөрөвдүгээр сар
Anonim

Хэш хийх Энэ нь объектын өгөгдлийг зарим төлөөлөх бүхэл тоон утгад буулгахын тулд зарим функц эсвэл алгоритмыг ашиглахыг хэлнэ. Энэ гэж нэрлэгддэг хэш код (эсвэл зүгээр л хэш ) дараа нь байж болно ашигласан газрын зураг дээрх зүйлийг хайж байхдаа хайлтаа нарийсгах арга юм.

Үүний дагуу Java хэл дээр хэшинг гэж юу вэ?

Хэш хийх тухайн аж ахуйн нэгжийг хувиргаж байна (д java нэр томъёо - объект) зарим тоо (эсвэл дараалал). Модерн Java IDE нь сайн hashCode аргыг бий болгох боломжийг олгодог. Hashtable болон hasshmap нь ижил зүйл юм. Түлхүүр нь хаана байна, түлхүүр-утга хос хэш хийсэн . Хэш Жагсаалт болон хэшсет нь утгыг хадгалдаггүй - зөвхөн түлхүүрүүд.

Нэмж хэлэхэд хэш гэж юу гэсэн үг вэ? Хэш хийх нь математик функцийг ашиглан текстийн мөрөөс утга эсвэл утгыг үүсгэж байна. Томъёо нь үүсгэдэг хэш , энэ нь дамжуулалтын аюулгүй байдлыг хөндлөнгөөс хамгаалахад тусалдаг. Хэш хийх нь мөн өгөгдлийн сангийн хүснэгт дэх гол утгуудыг үр ашигтайгаар эрэмбэлэх арга юм.

Бас асуулт бол хэшинг юунд ашигладаг вэ?

Хэш хийх байна дэг байсан өгөгдлийн санд байгаа зүйлсийг индексжүүлж, татаж аваарай, учир нь богиносголыг ашиглан тухайн зүйлийг хурдан олох боломжтой хэш хийсэн Анхны утгыг ашиглан олохоос илүү түлхүүр. Энэ бас - д ашигласан олон шифрлэлтийн алгоритмууд.

Java хэл дээрх хэш мөргөлдөөн гэж юу вэ?

А Зөрчилдөөн үед тохиолддог a хэш функц нь хоёр өөр түлхүүрийн ижил хувин байршлыг буцаана. А Зөрчилдөөн Хоёр өөр түлхүүр ижил hashCode-тэй үед тохиолдох бөгөөд энэ нь хоёр тэгш бус объект байгаа тул тохиолдож болно Java ижил hashCode байж болно.

Зөвлөмж болгож буй: