Tüm karakterleri birbirinden farklı (unique) olan karakterleri Java ile nasıl tespit edebiliriz? Mesela daha önce yaptığımız gibi karakterleri ASCII kodlarına çevirerek bir dizi hazırlayabiliriz. Ya da bu sefer daha basit bir çözüm üreterek String'i char'lardan oluşan bir vektöre dönüştürüp sıraladıktan sonra yan yana gelen iki tane aynı harf olup olmadığını kontrol edebiliriz :)
Kodlar:
public static void main(String[] args) {
String yazi1="yazi";
System.out.println(harfSayisiKontrolu(yazi1)); //true
String yazi2="test";
System.out.println(harfSayisiKontrolu(yazi2)); //false
String yazi3="uygulama";
System.out.println(harfSayisiKontrolu(yazi3)); //false
String yazi4="deneme";
System.out.println(harfSayisiKontrolu(yazi4)); //false
}
public static boolean harfSayisiKontrolu(String yazi) {
char[] karakterler = yazi.toCharArray();
Arrays.sort(karakterler);
for (int i = 1; i < karakterler.length; i++) {
if (karakterler[i] == karakterler[i-1]) {
return false;
}
}
return true;
}