To bude tím, že se v Javě 5 přecházelo na jinou verzi normy Unicode konkrétně z 
verze 2.1 z roku 1998 (ta ale oproti verzi 2.0, s níž Java začala, přidala 
jenom znak eura) na verzi 4.0 z roku 2003. 

Šestka podle mne implementuje verzi 5.0 z roku 2006. Ta udělala zase pár 
kotrmelců - možná že ta změna interpretace háčku je jedním z nich. Každopádně 
se v šestce třídy pro normalizaci znaků (převod háčko-čárkovaných písmen na 
dvojici znak - diakritika a zpět) přestěhovaly z balíčku sun.text do java.text 
a navíc se jejich metody i trochu změnily včetně požadovaných parametrů.

Pozor - v roce 2010 se chystá Unicode verze 6.0, takže můžeme v příští Javě 
čekat v práci se znaky zase nějaké drobné změny.

Rozpovídal jsem se jenom proto, abyste věděli, že i věc, o níž si člověk myslí, 
že už je dávno usazená, může pořád překvapovat - viz problém s diakritikou.


Preji krasny den
Have a nice day

°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
Rudolf  P E C I N O V S K Y

Senior EDU Expert, ICZ a.s.

Associate Professor
Department of information technologies
University of Economics, Prague

Tel:   +420 244 101 764
GSM:   +420 603 330 090
ICQ:    158 156 600 
Jabber: [email protected]

[email protected] 
[email protected]
°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°


> -----Původní zpráva-----
> Od: [email protected] [mailto:[email protected]] za
> uživatele Petr Franta
> Odesláno: pátek 11. prosince 2009 09:59
> Komu: [email protected]
> Předmět: Je to písmeno nebo není ...
> 
> Začaly mi padat testy a po bádání jsem dospěl k tomuto:
> Znak "háček" bez písmene - \u02C7 není v JDK 1.4 znak, ale v JDK 1.6
> už znakem je! Asi těch znaků bude více, ale pro mne je to překvapením
> ...
> 
> public class Test {
>  /**
>   * Test znaku.
>   */
>  public static void main(String[] args) {
>    char ch = '\u02C7';
> 
>    System.out.println("Znak: " + ch + " " + (int) ch + " " +
> Character.isLetterOrDigit(ch));
>  }
> }
> 
> C:\Program Files\Java\jdk14\bin>java -version
> java version "1.4.2_06"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_06-b03)
> Java HotSpot(TM) Client VM (build 1.4.2_06-b03, mixed mode)
> 
> C:\Program Files\Java\jdk14\bin>java Test
> Znak: ˇ 711 false
> 
> c:\Program Files\Java\jdk16\bin>java -version
> java version "1.6.0_14"
> Java(TM) SE Runtime Environment (build 1.6.0_14-b08)
> Java HotSpot(TM) Client VM (build 14.0-b16, mixed mode, sharing)
> 
> c:\Program Files\Java\jdk16\bin>java Test
> Znak: ˇ 711 true
> 
> 
> __________ Informace od ESET NOD32 Antivirus, verze databaze 4677
> (20091210) __________
> 
> Tuto zpravu proveril ESET NOD32 Antivirus.
> 
> http://www.eset.cz
> 
 

__________ Informace od ESET NOD32 Antivirus, verze databaze 4677 (20091210) 
__________

Tuto zpravu proveril ESET NOD32 Antivirus.

http://www.eset.cz
 

Odpovedet emailem