Junior
Bilgan dasturlash tilingizdagi String sinfi haqida gapirib bering.
sobes.tech AI
AIdan javob
Java kontekstida, String o'zgarmas sinf bo'lib, belgilardan iborat ketma-ketlikni ifodalaydi. String ob'ektlari, masalan, literal yoki new operatori yordamida yaratiladi.
Xususiyatlar:
- O'zgarmaslik:
Stringob'ekti yaratildikten so'ng, uning mazmuni o'zgartirilmaydi. Matnni o'zgartirgandek ko'ringan har qanday operatsiya (masalan, qo'shish) aslida yangi matn yaratadi. Bu oqimlar va xesh jadvallar bilan ishlashda xavfsizlikni ta'minlaydi. - Matn havzasi: Java JVM, matn literal'lari uchun, maxsus xotira maydonidan foydalanadi, bu matn havzasi deb ataladi. Agar shunday mazmunga ega matn havzada allaqachon mavjud bo'lsa, JVM yangi ob'ekt yaratmasdan, mavjud ob'ektga havola qiladi. Bu xotira foydalanishni optimallashtiradi.
+operatorining ortiqcha yuklanishi: Matnlar uchun+operatori qo'shish uchun ishlatiladi.- Ko'plab foydali metodlar:
Stringsinfi matn bilan ishlash uchun keng metodlar to'plamini taqdim etadi: uzunligini olish (.length()), taqqoslash (.equals(),.equalsIgnoreCase()), qidirish (.contains(),.indexOf()), substring olish (.substring()), o'zgartirish (.replace()), katta-kichik harflarga o'tkazish (.toUpperCase(),.toLowerCase()), bo'sh joylarni olib tashlash (.trim()) va boshqalar.
Misollar:
Matn yaratish:
// Literal yordamida - matn havzasiga joylashtirilgan
String s1 = "Hello";
// new yordamida - yangi ob'ekt yaratiladi, havzadan tashqarida
String s2 = new String("World");
// Matnlarni qo'shish
String s3 = s1 + " " + s2;
O'zgarmaslik misoli:
String original = "abc";
String o'zgartirilgan = original.concat("def"); // Yangi matn yaratiladi
// original hali ham "abc"
System.out.println(original); // Chiqish: abc
// o'zgartirilgan - yangi matn "abcdef"
System.out.println(o'zgartirilgan); // Chiqish: abcdef
Muhim metodlar:
String matn = " Example String ";
// Matn uzunligi
int uzunlik = matn.length(); // 18
// Matnlarni taqqoslash
boolean tengmi = matn.equals(" Example String "); // true
// Katta-kichik harflarni hisobga olmasdan taqqoslash
boolean tengIgnoreCase = matn.equalsIgnoreCase(" example string "); // true
// Submatn qidirish
boolean ichidaMih = matn.contains("String"); // true
int indeks = matn.indexOf("String"); // 10
// Submatn olish
String sub = matn.substring(10, 16); // String
// Belgilarni o'zgartirish
String o'zgartirilgan = matn.replace(" ", "-"); // --Example-String--
// Bo'sh joylarni olib tashlash
String tozalangan = matn.trim(); // Example String
String Java'da matn ma'lumotlarini ifodalash uchun keng qo'llaniladi va satrlarni ishlash uchun asosiy sinf hisoblanadi.