String

Hasan Kadir Demircan
1 min readJan 29, 2020

--

String

Stringler hakkında bilmemiz gereken şey şunlardır;

  • java.lang.String sınıfında yer alırlar.
  • immutable’dır yani değişmezlerdir.
  • String class’i değil objeci immutable’dir.
  • Karşılaştırma yapılırken == ifadesi kullanmak yerine equals() kullanılmalıdır.

immutable(değişmez) için örnek olarak şu kod parçacasını verebiliriz.

Burada açıklamamız gereken şeyler;

  • İlk sout ile ekrana yazdırdığımızda java yazacak ve concat işlemi gerçekleşmeyecek çünkü String immutable’dır.String
  • Eğer concat işlemi yapacaksak String variable’a assign etmemiz gerekmektedir.
  • Örnek olarak name variable’a concat’i assign ettiğimiz için ikinci yazdırdığımızda javaimmutable yazacaktır.
  • firstName variable ile başka bir konuya değinelim.
  • firstName’e concat işlemini assign ettiğimizde,
  • kadir farklı bir alanda ve demircan farklı bir alanda tutulur.
  • kadir demircan olarak concat ettiğimizde yeni bir obje oluşur ve oraya yaşamaya başlar.
  • kadir ve demircan grbage collector tarafından temizlenir.

Bir diğer konu;

Örnek olarak;

Burada açıklamamız gereken şeyler;

  • name1 variable java ismini verdik.
  • name2 variable javase ismini verdik.
  • name1 ve name2 variable’ları == operatoru ile karşılaştırdığımızda isimlere değil objelerin alanlarını karşılaştırır.
  • Farklı isimde oldukları için ikiside farklı objelerde tutulur. Bu yüzden ekrana false döner.
  • name3 variable java ismini verdik ve name1 ile name2 variable’ları == operatoru ile karşılaştırdığımızda,
  • Yukarıda belirttiğimiz gibi aynı isimden bir obje varsa bir tane daha obje oluşmayacağı için true dönecektir.

Github linki : String

--

--

Hasan Kadir Demircan
Hasan Kadir Demircan

No responses yet