(B == false) örneğin, eğer açıkça boolean sabitleri karşı karşılaştırmak için kötü Java mı?
Kötü yazmak için:
if (b == false) //...
while (b != true) //...
Olduher zamanbunun yerine daha iyi yazmak için:
if (!b) //...
while (!b) //...
Orada performans olarak fark yok (yoksa var mı?), muhtemelen ama nasıl ikisi arasında explicitness, sıkıştırma, netlik, okunabilirlik, vb tartmak mı?
Güncelleme
Bu öznellik sınırlamak için de her zaman tercih edilir ve ne zaman kullanmak için hangi yetkili kodlama tarzı kurallar herhangi bir tırnak memnun olurum.
Not: değişken adı b
sadece bir örnek olarak kullanılmıştır, foo
bar
ala.
CEVAP
Bu kötü birşey değil, sadece gereksiz. Ayrıca, gerçek değişken ağırlık bir sürü isim. Örneğin if (b)
yukarıda if (userIsAllowedToLogin)
veya 9* *daha da kötü tercih ederim.
Performans endişesi ile ilgili olarak, derleyici uzak bir şekilde optimize eder.
Güncelleme: yetkili kaynaklardan gibi bir şey Sun Coding Conventions ama en azından Checkstyle açıkça bu konuda uyarmak istiyorum SimplifyBooleanExpression
bir modül var bulamıyorum.
Ng-eğer karşı iyilik için zaman zaman ...
Nasıl Java tarihleri karşılaştırmak iç...
Java eğer herhangi bir sonuç olup olma...
Nasıl düzgün Java iki Tamsayılar karşı...
Eğer bir açılan kullanırsam SQL enjeks...