Sobes.tech
Junior

İlkel veri tipleri birbirleriyle nasıl karşılaştırılır?

sobes.tech yapay zeka

AI'dan gelen yanıt

Java'da temel veri tipleri, karşılaştırma operatörleri kullanılarak değerleriyle karşılaştırılır:

  • == (eşitlik)
  • != (eşitsizlik)
  • > (büyük)
  • < (küçük)
  • >= (büyük veya eşit)
  • <= (küçük veya eşit)
// Tam sayıların karşılaştırılması
int x = 10;
int y = 20;
boolean isEqual = (x == y); // false
boolean isGreater = (x > y); // false

// Ondalıklı sayıların karşılaştırılması
double a = 3.14;
double b = 3.14;
boolean areEqualDoubles = (a == b); // true (doğru değerler için)

// Karakterlerin karşılaştırılması
char c1 = 'A';
char c2 = 'B';
boolean isCLessThanC2 = (c1 < c2); // true

// Boolean tipinin karşılaştırılması
boolean flag1 = true;
boolean flag2 = false;
boolean areFlagsEqual = (flag1 == flag2); // false

Dikkat edilmesi gereken nokta, kayan nokta sayıları (float, double) karşılaştırılırken == kullanımı, bellek içindeki sayıların temsil özellikleri nedeniyle hassas olmayan sonuçlar verebilir. Bu durumda, yaklaşık eşitliği kontrol etmek için mutlak farkın küçük bir tolerans (epsilon) ile karşılaştırılması önerilir.

double val1 = 0.1 + 0.2; // aslında tam olarak 0.3 değil, hassasiyet nedeniyle
double val2 = 0.3;
double epsilon = 1e-9; // Küçük tolerans

// Hassas olmayan yöntem
boolean incorrectEquality = (val1 == val2); // false olabilir

// Kayan nokta sayılarının karşılaştırılması için önerilen yöntem
boolean correctEquality = (Math.abs(val1 - val2) < epsilon); // true