Enteresan Bir Kod Olayı (YAZILIM)
-
sLeymN bunu yazdıMhmdAlmz bunu yazdı
Dün bu konu üstünde baya bi araştırma yaptım ne kadar basit bir konu olsa bile bazen if-else yazarken hiçbir şekilde kontrole etmezdim çalışıp çalışmadığını çünkü == ibaresi benim için EŞİT se anlamını ifade ediyordu bu gün anladım ki o kadar kolay değil biryerde String ifade karşılaştırırken 0 hata almak için önce string değeri parçalayıp CHAR dizi yaparak yani tek tek ascii kodlarını karşılarştırmak en iyisi Int-double gibi sayısal değerlerde @unbalanced abimin dediği gibi çıkarma işlemi yapmak en mantıklısı çünkü her zaman WebService/Database vs vs dışardan gelen veriler aynı tipte olmuyor. O yüzden == kullanmak biraz saçma imiş zaten ikisinin eşit olmasının sebepleri var ki olmalı yoksa eşitlik kavramı ortada olmaz biz yazılımcılar eşitse gibi ibare kullanmamamız gerekiyor . çünkü en ince ayrıntısına kadar bilmeliyiz çoğu şeyi.. Sayılarla işlemde çıkarma String ifadede ascii karşılaştırma mantıklı olandır . Tembellik edik == kullanmamalıymışız .. Bazıları bu görüşü gömüyor adam diyor 1 işlemi neden uzatayım aslında doğru program yavaşlar ama 0 hata için bunu göze almak gerekir @ozgunlu : Hocam sizin dediğiniz equals metodunun bir yararı yok bize denedim çünkü zaten o 2 veriyi karşılaştırıyor gene aynı kapıya çıkıyor yani @unbalanced abimin dediği gibi çıkarma işlemi en sağlı çalışanı bunu öğrendiğim iyi oldu teşekkürler :)
@sLeymN Hocam Long ve long aynı kapıya çıkıyor Long sadece long'un kalıntısı gibi birşey sanırım o yüzden bununla ilgili olacağını sanmıyorum çünkü 2 String değeri de karşılaştırırken düzgün çalışmıyor LeymN
aslında aynı şey değil hocam
https://docs.oracle.com/javase/7/docs/api/java/lang/Long.html ---> Class
https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html ---> primitive veri tipiEvet degil Long objedir, long primitive yukarda String icin verdigim ornekler bunda da gecerli
-
ozgunlu bunu yazdısLeymN bunu yazdıMhmdAlmz bunu yazdı
Dün bu konu üstünde baya bi araştırma yaptım ne kadar basit bir konu olsa bile bazen if-else yazarken hiçbir şekilde kontrole etmezdim çalışıp çalışmadığını çünkü == ibaresi benim için EŞİT se anlamını ifade ediyordu bu gün anladım ki o kadar kolay değil biryerde String ifade karşılaştırırken 0 hata almak için önce string değeri parçalayıp CHAR dizi yaparak yani tek tek ascii kodlarını karşılarştırmak en iyisi Int-double gibi sayısal değerlerde @unbalanced abimin dediği gibi çıkarma işlemi yapmak en mantıklısı çünkü her zaman WebService/Database vs vs dışardan gelen veriler aynı tipte olmuyor. O yüzden == kullanmak biraz saçma imiş zaten ikisinin eşit olmasının sebepleri var ki olmalı yoksa eşitlik kavramı ortada olmaz biz yazılımcılar eşitse gibi ibare kullanmamamız gerekiyor . çünkü en ince ayrıntısına kadar bilmeliyiz çoğu şeyi.. Sayılarla işlemde çıkarma String ifadede ascii karşılaştırma mantıklı olandır . Tembellik edik == kullanmamalıymışız .. Bazıları bu görüşü gömüyor adam diyor 1 işlemi neden uzatayım aslında doğru program yavaşlar ama 0 hata için bunu göze almak gerekir @ozgunlu : Hocam sizin dediğiniz equals metodunun bir yararı yok bize denedim çünkü zaten o 2 veriyi karşılaştırıyor gene aynı kapıya çıkıyor yani @unbalanced abimin dediği gibi çıkarma işlemi en sağlı çalışanı bunu öğrendiğim iyi oldu teşekkürler :)
@sLeymN Hocam Long ve long aynı kapıya çıkıyor Long sadece long'un kalıntısı gibi birşey sanırım o yüzden bununla ilgili olacağını sanmıyorum çünkü 2 String değeri de karşılaştırırken düzgün çalışmıyor LeymN
aslında aynı şey değil hocam
https://docs.oracle.com/javase/7/docs/api/java/lang/Long.html ---> Class
https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html ---> primitive veri tipiEvet degil Long objedir, long primitive yukarda String icin verdigim ornekler bunda da gecerli
Anladım hocam Çok teşekkürler :)
