GetHashCode-ը հիմնականում գոյություն ունի մեկ նպատակով. … Հեշ աղյուսակը տվյալների կառուցվածք է, որը կապում է արժեքը բանալիի հետ:
Ո՞րն է GetHashCode-ի նպատակը:
GetHashCode մեթոդը տրամադրում է այս հեշ կոդը ալգորիթմների համար, որոնք պահանջում են օբյեկտների հավասարության արագ ստուգումներ Հեշ կոդերի օգտագործման մասին տեղեկությունների համար, ինչպես նաև հեշ կոդերի որոշ լրացուցիչ ալգորիթմների համար, տես Hash Function գրառումը Վիքիպեդիայում: Երկու հավասար օբյեկտներ վերադարձնում են հեշ կոդեր, որոնք հավասար են:
Պետք է ներդնե՞մ GetHashCode:
Կարևոր է իրականացնել և՛ հավասարները, և՛ gethashcode՝ բախումների պատճառով, հատկապես բառարաններ օգտագործելիս: եթե երկու օբյեկտ վերադարձնում են նույն հեշկոդը, ապա դրանք տեղադրվում են բառարանում շղթայական կապով: Տարրը մուտք գործելու ընթացքում օգտագործվում է հավասարազոր մեթոդ:
Ե՞րբ պետք է անտեսենք GetHashCode-ը:
Եթե դուք օգտագործում եք հղման տեսակ, ապա պետք է հաշվի առնեք Equals մեթոդը վերացնելու մասին, եթե ձեր տեսակը նման է բազային տեսակի, ինչպիսիք են Point, String, BigNumber և այլն: Անտեսեք GetHashCode մեթոդը, որպեսզի a տեսակը ճիշտ աշխատի հեշ աղյուսակում Կարդացեք ավելին ուղեցույց հավասարության օպերատորների վերաբերյալ:
Ի՞նչ է հեշը կոդում:
Հաշինգը պարզապես որոշ տվյալներ փոխանցում է բանաձևի միջոցով, որն առաջացնում է արդյունք, որը կոչվում է հեշ: Այդ հեշը սովորաբար նիշերի շարան է, և բանաձևով ստեղծվող հեշերը միշտ նույն երկարությունն են՝ անկախ նրանից, թե որքան տվյալներ եք սնուցում դրան: Օրինակ, MD5 բանաձևը միշտ արտադրում է 32 նիշ երկարությամբ հեշեր։