Giriş
Unicode karakterleri temsil etmek için UTF-8 , UTF-16, UTF-32 kodeklerinden herhangi birisi kullanılabilir.
Unicode Gösterimi
Unicode ile kullanılan sayılar geleneksel olarak hex'tir.\uFFFF hex şeklinde gösterilir.
Unicode karakterleri temsil etmek için UTF-8 , UTF-16, UTF-32 kodeklerinden herhangi birisi kullanılabilir.
Unicode Gösterimi
Unicode ile kullanılan sayılar geleneksel olarak hex'tir.\uFFFF hex şeklinde gösterilir.
Örnek - Eğlenceli Bir Hile
Java'da şöyle yaparız. // \u000d new line karakterine denk gelir.
// \u000d System.out.println(“abracadabra!”)
Yani kod aslında şöyledir. Dolayısıyla System.out çalışır
// \u000d System.out.println(“abracadabra!”)
Unicode Düzlemleri yazısına taşıdım.
Code Point - Kod Noktası
Şu anki unicode aralığı U+0000 - U+10FFFF arasında. Yani Unicode 8.0'da 1,114,111 karakter için yer var. Şu anda sadece 120,737 tane karakter kullanımda. Kod Noktası bu aralıktaki (kod uzayı) bir sayıyı temsil ediyor.
Neden Code Point Lazım?
Unicode Standardı ilk çıktığında kod uzayı bu kadar büyük değildi ve 16 bitlik kodeklerin bu kod uzayını temsil yeterli olacağı varsayılmıştı. Ancak daha sonra kod uzayı büyüyünce 16 bitten daha fazla yer kullanan yeni bir kodek kullanılmaya başlandı. Şu andaki 32 bit karakterler ise şöyle temsil edilirler.
Nevertheless, Unicode has come up with a solution for still using 16 bits to represent these characters. This solution implies the following:Java
16-bit high surrogates: 1,024 values (U+D800 to U+DBFF)
16-bit low surrogates: 1,024 values (U+DC00 to U+DFFF)
Dolayısıyla Java'da eski 16 bit ve yeni 32 bit Code Point için metodlar var. String.chars() ve String.codePoints() Farkı yazısına bakabilirsiniz.
Bidirectional Sınıf
Bazı karakterler sağdan sola (İbranice, Arapça gibi) bazıları ise soldan sağa (Latin harfleri) yazılır. Bazı karakterler ise (rakamlar) tarafsızdır. Örneğin 0 rakamı eğer sağdan sola yazılan bir karakter varsa sola doğru yazılır. Yani hemen yanındaki karaktere bakarak yönü belirlenir.
Unicode Normalizasyonu
Unicode Normalizasyonu yazısına taşıdım
Karakter Setleri
Bir çok karakter seti mevcut. Java'daki character seti listesini buradan görebilirsiniz.
Bazı karakterler sağdan sola (İbranice, Arapça gibi) bazıları ise soldan sağa (Latin harfleri) yazılır. Bazı karakterler ise (rakamlar) tarafsızdır. Örneğin 0 rakamı eğer sağdan sola yazılan bir karakter varsa sola doğru yazılır. Yani hemen yanındaki karaktere bakarak yönü belirlenir.
Unicode Normalizasyonu
Unicode Normalizasyonu yazısına taşıdım
Karakter Setleri
Bir çok karakter seti mevcut. Java'daki character seti listesini buradan görebilirsiniz.
Hiç yorum yok:
Yorum Gönder