1. Sətirlərin müqayisəsi
Bu hər şey əladır. Amma siz görürsünüz ki, sətirlər s1
və s2
faktiki olaraq eynidir — onlar eyni mətni ehtiva edir. Proqrama necə demək olar ki, sətirləri müqayisə edərkən o, String
obyektlərinin ünvanlarına yox, onların məzmununa baxsın?
Bunun üçün Java-da String
tipində xüsusi bir metod var — equals
. Onun çağırışı belə görünür:
sətir1.equals(sətir2)
String s1 = "Salam";
String s2 = "SALAM";
String s3 = s1.toUpperCase();
System.out.println(s1.equals(s2));
System.out.println(s1.equals(s3));
System.out.println(s2.equals(s3));
Daha çox nümunələr:
2. Hərf rejimini nəzərə almadan sətirlərin müqayisəsiSon nümunədə gördünüz ki, Sətirlər bərabər deyil, amma axı onlarda eyni şey yazılıb, sadəcə hərflərin ölçüsü (rejimi) fərqlidir. Bəs onları necə müqayisə etmək olar ki, hərflərin ölçüsü nəzərə alınmasın? Belə ki, Və bu suala cavab — bəli. Java-da
Metodun adı rejimi nəzərə almadan müqayisə etmək kimi tərcümə olunur. Metodun adında iki dik xətt var: birincisi — bu kiçik Nümunə:
3. Sətirlərin müqayisə nümunəsiSadə bir nümunə göstərək: klaviaturadan iki sətir daxil etmək və onların eyni olub olmadığını yoxlamaq lazımdır. Kod belə görünəcək:
4. Sətirlərin müqayisəsinin maraqlı nüansıSən bilməlisən ki, burada bir vacib nüans var. Əgər Java-kompilyator kodunda (məhz kodda) bir neçə eyni sətir tapsa, yaddaşa qənaət etmək üçün onlar üçün yalnız bir obyekt yaradacaq.
Budur, yaddaşda nəticə necə olacaq: ![]() Və bu halda əgər sən Amma əgər sənə mütləq lazımdır ki, istinadlar fərqli olsun, onda belə yaza bilərsən:
Və ya belə:
Bu iki halda da |
---|
GO TO FULL VERSION