متد hashCode() یک کد هش برای رشته ساخته و برمی گرداند.
کد هش یک عدد (آدرس حافظه شیء) است که از سمت هر شیء تولید می شود، (نه فقط رشته ها). این عدد برای ذخیره یا بازیابی سریع اشیاء در یک hashtable استفاده می شود.
سینتکس متد hashCode() به صورت زیر است:
string.hashCode()
در اینجا، string
یک شیء از کلاس String
است.
پارامترهای hashCode()
متد hashCode() هیچ پارامتری را نمی گیرد.
مقدار بازگشتی متد hashCode()
- کد هش مربوط به رشته را که مقداری از نوع
int
است، برمی گرداند
کد هش با استفاده از فرمول محاسبه می شود:
s[0]*31 (n-1) + s[1]*31 (n-2) + ... + s[n-1]
که در آن،
s[0]
اولین عنصر رشتهs
است ،s[1]
عنصر دوم و غیره است.n
طول رشته است
مثال: متد hashCode()
class Main {
public static void main(String[] args) {
String str1 = "Java";
String str2 = "Java Programming";
String str3 = "";
System.out.println(str1.hashCode()); // 2301506
System.out.println(str2.hashCode()); // 1377009627
// hash code of empty string is 0
System.out.println(str3.hashCode()); // 0
}
}
توجه : برای اینکه دو رشته برابر باشند، کد هش آنها نیز باید برابر باشد.
دیدگاهها