RiapaMeTpbi anrmeTa


Download 399.85 Kb.
bet60/97
Sana24.12.2022
Hajmi399.85 Kb.
#1060199
1   ...   56   57   58   59   60   61   62   63   ...   97
Bog'liq
Java (Laboratoriya)

public static void main(String[] args) { String si = "Java"; String s2 = "Java"; String s3 = new String(si); System.out.println(si + "==" + s2
+ " : " + (s1==s2));//to‘g‘ri
System.out.println(s1 + "==" + s3
+ " : " + (s1==s3));//false System.out.println(s1 + " teng " + s2
+ " : " + s1.equals(s2));//true System.out.println(s1 + " teng " + s3
+ " : " + s1.equals(s3));//true System.out.println(s1.hashCode()); System.out.println(s2.hashCode()); System.out.println(s3.hashCode()); }
}
Natijada, masalan, u ko'rsatiladi:
Java==Java: rost
Java==Java: noto'g'ri
Java Java ga teng: rost
Java Java ga teng: rost
2301506
2301506
2301506
Bir xil qiymatdagi ob'ektlar xotiraning turli sohalarida joylashganiga qaramay, ularning xesh kodlari qiymatlari bir xil.
Java-da barcha havolalar stekda, ob'ektlar esa uyada saqlanadi. s 2 yaratilsa , avval havola yaratiladi, so'ngra ushbu havolaga ob'ekt tayinlanadi. Bunday vaziyatda s2 allaqachon mavjud ­literal bilan bog'lanadi, chunki si ob'ekti allaqachon bu lug'atga havola qilgan. s 3 yaratilganda konstruktor chaqiriladi, ya'ni xotirani ajratish initsializatsiyadan oldin sodir bo'ladi, bu holda uyada yangi ob'ekt yaratiladi .
Intern () usulini chaqirish orqali xotirani saqlash va ob'ektdan literalga havolani qayta aniqlash mumkin .
// № 7.4 misol : intern() dan foydalanish : DemoIntern.java umumiy sinfi DemoIntern {
umumiy statik void main(String[] args) {
String s 1 = "Java";//literal va unga havola
String s2 = new String("Java");
System.out.println(s1 == s2); // yolg'on
s2 = s2.intern();
System.out.println(s1 == s2); // rost
}
}
Bunday holatda, s 1 havolasi ob'ektning barcha xususiyatlariga ega bo'lgan literalga ishga ­tushiriladi, to usul chaqiruvlarigacha. Intern () usulini chaqirish s 2 ob'ektining qiymatiga mos keladigan literalni qidirishni tashkil qiladi ( satrning kanonik tasviri) va agar natija ijobiy bo'lsa, topilgan literalga havolani qaytaradi, agar natija bo'lsa. salbiy, u qiymatni hovuzga qo'yadi va unga havolani qaytaradi.
Quyidagi misolda tanlash usuli yordamida qatorlar massivini qanday saralash ko'rsatilgan.
// misol № 7.5: tartiblash : SortArray.java umumiy sinf SortArray {

Download 399.85 Kb.

Do'stlaringiz bilan baham:
1   ...   56   57   58   59   60   61   62   63   ...   97




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling