Class HarfDizisi
java.lang.Object
net.zemberek.yapi.HarfDizisi
- All Implemented Interfaces:
CharSequence
,Comparable<HarfDizisi>
Bu sinif Dil islemleri sirasinda Turkceye ozel islemler gerektiginden String-StringBuffer yerine kullanilir.
String gibi genel bir tasiyici degil ara islem nesnesi olarak kullanilmasi onerilir.
String'den farkli olarak "degistirilebilir" bir yapidadir ve Thread-safe degildir.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptiondefault constructor.HarfDizisi
(int kapasite) 'kapasite' boyutlu 'TurkceHarf' dizisine sahip nesne olusturur.HarfDizisi
(String str, Alfabe alfabe) Belirlenen alfabe ile String icerigini Harflere donusturur.HarfDizisi
(String str, Alfabe alfabe, int kapasite) 'kapasite' boyutlu 'TurkceHarf' dizisine sahip nesne olusturur.HarfDizisi
(HarfDizisi hdizi) Copy-Constructor. -
Method Summary
Modifier and TypeMethodDescriptionboolean
aradanKiyasla
(int baslangic, HarfDizisi kelime) araDizi
(int bas, int son) boolean
asciiToleransliAradanKiyasla
(int baslangic, HarfDizisi kelime) boolean
boolean
asciiToleransliKiyasla
(HarfDizisi harfDizisi) ascii benzer harf toleransli esitlik kiyaslamasi.boolean
bastanKiyasla
(HarfDizisi giris) char
charAt
(int index) int
Compare to metodu siralama icin kiyaslama yapar.ekle
(int index, HarfDizisi hdizi) Diziye baska bir harf dizisinin icerigini index ile belirtilen harften itibaren ekler.void
ekle
(int index, TurkceHarf harf) girilen pozisyona herf ekler, bu noktadan sonraki harfler otelenir.ekle
(HarfDizisi hdizi) Diziye baska bir harf dizisinin icerigini ular.ekle
(TurkceHarf harf) kelimenin sonuna harf ekler.boolean
Tam esitlik kiyaslamasi.harf
(int i) verilen pozisyondaki harfi dondurur.void
harfDegistir
(int index, TurkceHarf harf) istenen noktadaki harfi giris parametresi olan TurkceHarf ile degistirir.harfSil
(int index) verilen pozisyondaki harfi siler.harfSil
(int index, int harfSayisi) verilen pozisyondan belli miktar harfi siler.int
hashCode()
boolean
ilkHarf()
ilk harfi dondurur.ilkSesli
(int basla) ilk sesliyi dondurur.void
kirp
(int index) "index" numarali harften itibaren siler.int
length()
int
Genellikle kelimedeki hece sayisini bulmak icin kullanilir.void
sil()
bu metod harf referansi dizisini serbest birakmaz, sadece boyu sifira indirir.sonHarf()
Dizinin son harfini dondurur.void
son harfi siler.void
son harfi yumusatir.sonSesli()
dizideki son sesliyi dondurur.subSequence
(int start, int end) toString()
toString
(int index) sadece belirli bir bolumunu String'e donusturur.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.CharSequence
chars, codePoints, isEmpty
-
Field Details
-
BOS_DIZI
-
-
Constructor Details
-
HarfDizisi
public HarfDizisi()default constructor. 7 boyutlu bir TurkceHarf referans dizisi olusturur. -
HarfDizisi
public HarfDizisi(int kapasite) 'kapasite' boyutlu 'TurkceHarf' dizisine sahip nesne olusturur.- Parameters:
kapasite
- baslangic olusan TurkceHarf[] boyu
-
HarfDizisi
'kapasite' boyutlu 'TurkceHarf' dizisine sahip nesne olusturur. daha sonra girisi String'i icindeki karakterleri TurkceHarf seklinde TurkceHarf dizisine aktarir. Eger String boyu kapasiteden buyukse kapasite'yi boy'a esitler. Eger String icindeki karakter Alfabe'de yar almiyorsa "TANIMSIZ_HARF" harfi olarak eklenir.- Parameters:
str
- ornek alincak Stringalfabe
- ilgili alfabekapasite
- baslangic olusan TurkceHarf[] boyu
-
HarfDizisi
-
HarfDizisi
Copy-Constructor. gelen harf dizisi ile ayni icerige sahip olacak sekilde TurkceHarf dizisi olusturur.- Parameters:
hdizi
- ornek alinacak HarfDizisi
-
-
Method Details
-
sil
public void sil()bu metod harf referansi dizisini serbest birakmaz, sadece boyu sifira indirir. -
sonHarf
Dizinin son harfini dondurur.- Returns:
- varsa son harf, Yoksa TANIMSIZ_HARF.
-
sonSesli
dizideki son sesliyi dondurur. eger dizi boyu 0 ise ya da sesli harf yoksa TANIMSIZ_HARF doner.- Returns:
- varsa son sesli yoksa TANIMSIZ_HARF
-
ekle
kelimenin sonuna harf ekler.- Parameters:
harf
- eklenecek harf- Returns:
- this
-
ekle
girilen pozisyona herf ekler, bu noktadan sonraki harfler otelenir. "armut" icin (2, a) "aramut" uretir.- Parameters:
index
- eklenecek pozisyonharf
- eklenecek harf.- Throws:
ArrayIndexOutOfBoundsException
-
ekle
Diziye baska bir harf dizisinin icerigini ular.- Parameters:
hdizi
- ulanacak harf dizisi.- Returns:
- this.
-
ekle
Diziye baska bir harf dizisinin icerigini index ile belirtilen harften itibaren ekler. "armut" icin (2, hede) "arhedemut" uretir.- Parameters:
index
- eklencek pozisyonhdizi
- eklenecek harf dizisi- Returns:
- this.
- Throws:
ArrayIndexOutOfBoundsException
-
araDizi
-
harf
verilen pozisyondaki harfi dondurur. icerigi "kedi" olan HarfDizisi icin harf(1) e dondurur.- Parameters:
i
- istenilen pozisyondaki harf.- Returns:
- girilen pozisyondaki harf, yoksa TANIMSIZ_HARF
-
ilkSesli
ilk sesliyi dondurur. eger sesli yoksa TANIMSIZ_HARF doner. aramaya belirtilen indeksten baslar.- Parameters:
basla
- baslangic indeksi.- Returns:
- varsa ilk sesli, yoksa TANIMSIZ_HARF
-
equals
-
hashCode
-
asciiToleransliKiyasla
ascii benzer harf toleransli esitlik kiyaslamasi.- Parameters:
harfDizisi
- kiyaslanacak harfDizisi- Returns:
- true eger esitse.
-
asciiToleransliAradanKiyasla
-
asciiToleransliBastanKiyasla
-
aradanKiyasla
-
bastanKiyasla
-
harfDegistir
istenen noktadaki harfi giris parametresi olan TurkceHarf ile degistirir.- Parameters:
index
- degistirilecek indeks.harf
- kullanilacak harf- Throws:
ArrayIndexOutOfBoundsException
-
sonHarfYumusat
public void sonHarfYumusat()son harfi yumusatir. Eger harfin yumusamis formu yoksa harf degismez. -
sonHarfSil
public void sonHarfSil()son harfi siler. eger harf yoksa hicbir etki yapmaz. -
harfSil
verilen pozisyondaki harfi siler. kelimenin kalan kismi otelenir. eger verilen pozisyon yanlis ise ArrayIndexOutOfBoundsException firlatir. "kedi" icin (2) "kei" olusturur.- Parameters:
index
- silinecek harf pozisyonu- Returns:
- dizinin kendisi.
- Throws:
ArrayIndexOutOfBoundsException
-
harfSil
verilen pozisyondan belli miktar harfi siler. "kediler" icin (2,2) "keler" olusturur.- Parameters:
index
- silinmeye baslanacak pozisyonharfSayisi
- silinecek harf miktari- Returns:
- dizinin kendisi
-
ilkHarf
ilk harfi dondurur. eger harf yoksa TANIMSIZ_HARF doner.- Returns:
- ilk TurkceHarf.
-
kirp
public void kirp(int index) "index" numarali harften itibaren siler. "kedi" icin (1) "k" olusturur.- Parameters:
index
- kirpilmaya baslanacak pozisyon
-
toString
sadece belirli bir bolumunu String'e donusturur.- Parameters:
index
- String'e donusum baslangic noktasi.- Returns:
- olusan String.
-
toString
- Specified by:
toString
in interfaceCharSequence
- Overrides:
toString
in classObject
-
compareTo
Compare to metodu siralama icin kiyaslama yapar. Kiyaslama oncelikle harflerin alfabetik sirasina daha sonra dizilerin boyutuna gore yapilir.- Specified by:
compareTo
in interfaceComparable<HarfDizisi>
- Parameters:
o
- kiyaslanacak dizi.- Returns:
- 'kedi'.compareTo('kedi') -> 0 'kedi'.compareTo('ke') -> 2 (boy farki) 'kedi'.compareTo('kedm') -> -4 (i->m alfabetik sira farki) 'kedi'.compareTo(null) -> 1
-
sesliSayisi
public int sesliSayisi()Genellikle kelimedeki hece sayisini bulmak icin kullanilir.- Returns:
- inte, sesli harf sayisi.
-
hepsiBuyukHarfmi
public boolean hepsiBuyukHarfmi()- Returns:
- hepsi buyuk harf ise true, boy=0 dahil.
-
length
public int length()- Specified by:
length
in interfaceCharSequence
-
charAt
public char charAt(int index) - Specified by:
charAt
in interfaceCharSequence
-
subSequence
- Specified by:
subSequence
in interfaceCharSequence
-