JavaRush /Java Blogu /Random-AZ /Java istinadı. Statik sətirlər
articles
Səviyyə

Java istinadı. Statik sətirlər

Qrupda dərc edilmişdir
Java-da sətirlər String sinfi tərəfindən təsvir edilir və statikdir, yəni. Mövcud sətirdə simvolları və onların sayını dəyişə bilməzsiniz. Yeni operator tərəfindən standart yaratmağa əlavə olaraq, sətirlər birbaşa sətir literalından yaradıla bilər. Eyni zamanda, optimallaşdırma məqsədləri üçün bu şəkildə yaradılmış obyektlər əlavə olaraq ayrıca bir sahədə - simli hovuzda saxlanılır. String s1 = "d" // строка будет сохранена в пуле // строка не будет сохранена в пуле // будет уничтожена сборщиком мусора String s2 = new String("a"); Sətirlərin statik və dinamika bölünməsinin üstünlüklərindən biri odur ki, sətirlərin arqument kimi istifadə edildiyi yerlərdə təhlükəsizliyi artırır (məsələn, verilənlər bazalarının açılması, İnternet bağlantıları, sinif yükləmə mexanizmləri).

əməliyyat +

+ əməliyyatı sətirlər üçün əlçatandır və bir neçə sətri bir yerdə birləşdirməyə imkan verir. Operandlardan biri sətir deyilsə, o, avtomatik olaraq sətirə çevrilir. Obyektlər üçün bu məqsədlə toString metodundan istifadə olunur. Hər bir əməliyyat daxili olaraq dinamik StringBuilder və ya StringBuffer obyektindən istifadə edir. Buna görə də, bir neçə simli yığmaq üçün eyni vaxtda bir StringBuilder/StringBuffer istifadə etmək optimaldır.

alt sətir seçimi

Alt sətir metodu haqqında qeyd var - qaytarılan sətir orijinal ilə eyni bayt massivindən istifadə edir. Məsələn, siz 1MB fayldan A xəttini endirdiniz. Orada nəsə tapdılar və onu 3 simvol uzunluğunda ayrıca B sətirinə ayırdılar. Reallıqda B xətti də eyni 1MB tutur. String s ="very .... long string from file"; // совместно использует ту же память что и s String sub1 = s.substring(2,4); // этот an object использует отдельный массив на 4 символа String sub2 = new String(s.substring(2,4));

əsas üsullar

  • compareTo (String anotherString) - sətirlərin leksiqrafik müqayisəsi;
  • compareToIgnoreCase (String str) - sətirlərin hərflərə həssas olmayan leksiqrafik müqayisəsi;
  • regionMatches (boolean ignoreCase, int toffset, String other, int ooffset, int len) - sətir bölgələrinin identifikasiyası üçün test, hərf həssaslığını təyin edə bilərsiniz;
  • regionMatches (int toffset, String other, int ooffset, int len) - sətir bölgələrinin eyniliyi üçün test;
  • concat (String str) - iki sətirin birləşməsini qaytarır;
  • ehtiva edir (CharSequence s) - göstərilən simvol ardıcıllığının sətirə daxil olub-olmadığını yoxlayır;
  • endsWith (String suffix) - sətirin göstərilən şəkilçi ilə bitib-bitmədiyini yoxlayır;
  • startsWith (String prefiksi) - sətrin müəyyən edilmiş prefikslə başlamasını yoxlayır;
  • startsWith (String prefiksi, int toffset) - göstərilən mövqedəki sətirin göstərilən prefikslə başlamasını yoxlayır;
  • bərabərdir (Object anObject) - sətirin göstərilən obyektlə eyni olub olmadığını yoxlayır;
  • getBytes () - sətrin bayt təsvirini qaytarır;
  • getChars (int srcBegin, int srcEnd, char[] dst, int dstBegin) - sətir bölməsinin simvol təsvirini qaytarır;
  • hashCode () - sətirin hash kodu;
  • indexOf (int ch) - sətirdə simvolun ilk dəfə baş verməsinin axtarışı;
  • indexOf (int ch, int fromIndex) - göstərilən mövqedən sətirdə simvolun ilk baş verməsini axtarır;
  • indexOf (String str) - göstərilən alt sətirin ilk baş verməsinin axtarışı;
  • indexOf (String str, int fromIndex) - göstərilən mövqedən göstərilən alt sətirin ilk baş verməsini axtarır;
  • lastIndexOf (int ch) - simvolun sonuncu baş verməsinin axtarışı;
  • lastIndexOf (int ch, int fromIndex) - göstərilən mövqedən simvolun sonuncu baş verməsini axtarın;
  • lastIndexOf (String küç) - sətrin sonuncu baş verməsinin axtarışı;
  • lastIndexOf (String str, int fromIndex) - göstərilən mövqedən sətrin sonuncu baş verməsini axtarır;
  • əvəz (char oldChar, char newChar) - sətirdə bir simvolu digəri ilə əvəz etmək;
  • əvəz (CharSequence hədəfi, CharSequence dəyişdirilməsi) - bir alt sətri digəri ilə əvəz etmək;
  • substring (int beginIndex, int endIndex) - alt sətri sətir kimi qaytarmaq;
  • toLowerCase () - sətri kiçik hərflərə çevirmək;
  • toLowerCase (Yerli yerli) - müəyyən edilmiş dildən istifadə edərək sətri kiçik hərflərə çevirmək;
  • toUpperCase() - sətri böyük hərfə çevirmək;
  • toUpperCase (Yerli dili) - göstərilən dildən istifadə edərək sətri böyük hərflərə çevirmək;
  • trim() - sətrin sonundakı boş simvolları kəsmək;
  • valueOf(a) - müxtəlif növləri sətirə çevirmək üçün statik üsullar.
Axtarış metodları hadisənin indeksini qaytarır və ya axtarılan element tapılmadıqda -1. Əvəzetmə kimi çevirmə üsulları sətirin özünü dəyişdirmir, lakin müvafiq yeni sətir obyektini qaytarır. müntəzəm ifadələri olan üsullar Sətirlərdə müntəzəm ifadələrdən istifadə edən bir sıra üsullar da var :
  • matches (String regex) - sətirin göstərilən normal ifadəyə uyğun olub-olmaması;
  • replaceAll (String regex, String rplс) - nizamlı ifadəni təmin edən sətirlərin bütün təkrarlarını göstərilən sətirlə əvəz edir;
  • replaceFirst (String regex, String rplс) - nizamlı ifadəyə uyğun gələn sətirin ilk baş verməsini göstərilən sətirlə əvəz edir;
  • split (String regex) - sətri hissələrə ayırır, parçalanmanın sərhədləri nizamlı ifadəni təmin edən sətirlərin baş verməsidir;
  • split (String regex, int limit) - əvvəlkinə bənzəyir, lakin sətirə nizamlı ifadənin limit dəyərinə tətbiqi məhdudiyyəti ilə. Limit>0 olarsa, qaytarılan sətir massivinin ölçüsü limiti keçməyəcək. Əgər limit<=0 olarsa, onda nizamlı ifadə sətrə qeyri-məhdud sayda tətbiq edilir.
Orijinal mənbəyə keçid: http://darkraha.com/rus/java/lang/string/static_string.php
Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION