Bu dərslikdə biz Java-da sətirlərlə işləməyi öyrənəcəyik. Proqramlaşdırmada bu qədər geniş istifadə olunan sətirlər simvollar ardıcıllığıdır. Java proqramlaşdırma dilində sətirlər obyektdir.
String
Java platforması sətirlərin yaradılması və manipulyasiyası üçün sinif təqdim edir .
Sətirlərin yaradılması
Bir sətir yaratmağın ən sadə yolu belə görünür:String greeting = "Hello world!";
Bu halda "Salam Dünya!" dırnaq içərisində alınmış simvollar ardıcıllığından ibarət sətir hərfidir (yəni sabit). Kompilyator hər dəfə sətir hərfi ilə qarşılaşdıqda o, String
dəyəri olan tipli obyekt yaradır, bizim vəziyyətimizdə "Salam Dünya!". Hər hansı digər obyekt kimi, sətir də açar sözündən istifadə etməklə yaradıla bilər new
. Sinifdə simvol massiviString
kimi müxtəlif mənbələrdən istifadə edərək obyekt yaratmağa imkan verən üç konstruktor var .
char[] helloArray = {'h', 'e', 'l', 'l', 'o', '.'};
String helloString = new String(helloArray);
System.out.println(helloString);
Nümunənin son sətri ekrana salam yazacaq . Sinif String
dəyişməzdir, ona görə də biz bir obyekt yaratdıqdan sonra onu dəyişə bilmərik. Aşağıda nəzərdən keçirəcəyimiz bəzi üsullar bunu düzəldə bilər. Çünki String
dəyişməz, bu üsullar əməliyyatın nəticəsini ehtiva edən yeni sətir yaradır və qaytarır.
Java sətir uzunluğu
Sətir haqqında məlumat əldə etmək üsullarına giriş metodları deyilir. Bu üsullardan birilength()
. O, sətirdəki simvolların sayını qaytarır. Aşağıdakı nümunədə len
17 olacaq:
String palindrome = "Dont saw I saw Tod";
int len = palindrome.length();
Dəyişən palindrome
palindromu ehtiva edir, yəni. hər iki şəkildə eyni oxunan söz və ya cümlə. Palindromu tərsinə çevirəcək kiçik bir proqram yazaq. ilə başlayaraq sətirin icharAt(i)
-ci simvolunu qaytaran metoddan istifadə edəcəyik . 0
public class StringDemo {
public static void main(String[] args) {
String palindrome = "Dot saw I was Tod";
int len = palindrome.length();
char[] tempCharArray = new char[len];
char[] charArray = new char[len];
//создадим из строки
// массив символов
for (int i = 0; i < len; i++) {
tempCharArray[i] =
palindrome.charAt(i);
}
// перевернем массив символов
for (int j = 0; j < len; j++) {
charArray[j] =
tempCharArray[len - 1 - j];
}
String reversePalindrome =
new String(charArray);
System.out.println(reversePalindrome);
}
}
Proqram çap olunacaq
doT saw I was toD
Sətri tərsinə çevirmək üçün əvvəlcə sətirdən simvollar massivi yaratdıq (ilk dövrə), sonra tərsinə çevrilmiş birinci massivi yazdığımız yeni massiv yaratdıq, sonra yeni sətir yaratdıq. Sinif simvollar massivini qaytaran String
bir metodu ehtiva edir getChars()
, buna görə də birinci döngə sətirlə əvəz edilə bilər:
palindrome.getChars(0, len, tempCharArray, 0);
Simli birləşmə
SinifString
iki sətri birləşdirmək üçün metod tətbiq edir:
string1.concat(string2);
string1
Bu kod onu ehtiva edən və ona əlavə edilən yeni sətir qaytaracaq string2
. Bu metodu sətir hərfi ilə də istifadə edə bilərsiniz:
"My name is ".concat("Rumplestiltskin");
Çox vaxt sətirlər “ ” operatorundan istifadə etməklə birləşdirilir +
, məsələn:
"Hello," + " world" + "!"
Nəticə “ Salam, dünya!” sətri olacaq. " " +
" operatoru məlumatı göstərmək üçün geniş istifadə olunur, məsələn:
String string1 = "saw I was ";
System.out.println("Dot " + string1 + "Tod");
Kod " Nöqtə gördüm mən Tod idim " çıxacaq. Bu cür birləşmə hər hansı digər obyektlərlə birlikdə istifadə edilə bilər. Sətir olmayan obyektlər üçün toString()
onları sətirlərə çevirən metod çağırılacaq. Sətirin çıxış formatının qurulması Biz artıq rəqəmlərin çıxışını formatlaşdırarkən printf()
üsullara baxmışıq . format()
Sinfin String
sətri qaytaran oxşar metodu var. Statik metoddan istifadə edərək format()
təkrar istifadə oluna bilən bir fond şablonu yaratmaq mümkündür, məsələn:
System.out.printf ("The value of the float " +
"variable is %f, while " +
"the value of the " +
"integer variable is %d, "
"and the string is %s",
floatVar, intVar, stringVar);
bu kodu istifadə edə bilərsiniz:
String fs;
fs = String.format("The value of the float " +
"variable is %f, while " +
"the value of the " +
"integer variable is %d, " +
" and the string is %s",
froatVar, intVar, stringVar);
System.out.println(fs);
Hamısı budur! :) Mənbəyə keçid: Java-da sətirlər
GO TO FULL VERSION