Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente bannato
    Registrato dal
    Sep 2012
    Messaggi
    465

    Cos'é la direzione di un carattere in java?

    Sul mio manuale c'é scritto che getDirectionality() serve per stabilire la "direzione di un carattere" che però io non so neppure cosa sia. Su internet ho trovato questo esempio:

    codice:
    import java.lang.*;
    
    public class Esempio {
    
       public static void main(String[] args) {
    
          // create 2 int primitives cp1, cp2
          int cp1, cp2;
    
          // assign values to cp1, cp2
          cp1 = 0x2323;
          cp2 = 0x2c60;
    
          // create 2 byte primitives b1, b2
          byte b1, b2;
    
          // assign directionality of cp1, cp2 to b1, b2
          b1 = Character.getDirectionality(cp1);
          b2 = Character.getDirectionality(cp2);
    
          /**
           *  byte value 13  represents DIRECTIONALITY_OTHER_NEUTRALS
           *  byte value -1  represents DIRECTIONALITY_UNDEFINED
           */
           
          String str1 = "Directionality of cp1 is " + b1;
          String str2 = "Directionality of cp2 is " + b2;
    
          // print b1, b2 values
          System.out.println( str1 );
          System.out.println( str2 );
       }
    }
    ma non mi aiuta a capire...


  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Penso si riferisca a questo
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    Utente bannato
    Registrato dal
    Sep 2012
    Messaggi
    465
    scusami ma anche la traduzione in italiano è incomprensibile...

    a me interessa capire con che criterio 0x2323 si trasforma in 13 ovvero 0x2c60 in 0...


  4. #4
    Originariamente inviato da peruzzo
    scusami ma anche la traduzione in italiano è incomprensibile...
    La direzionalità di un carattere sostanzialmente è la proprietà che dice in che verso va il testo che contiene quel carattere - ad esempio, caratteri arabi hanno direzionalità RTL (right to left), caratteri latini hanno direzionalità LTR (left to right) (quando si mischiano caratteri di direzionalità diverse c'è tutto un algoritmo strambo definito nello standard Unicode che specifica come ci si deve comportare - ovviamente è un gran casino).
    a me interessa capire con che criterio 0x2323 si trasforma in 13 ovvero 0x2c60 in 0...
    La classe Character fornisce un metodo che, in base al codice di carattere passato, ti dice che direzionalità ha; a priori non c'è necessariamente una correlazione "immediata" con il numero di codepoint specificato, è semplicemente una proprietà del carattere passato (di nuovo, un carattere latino avrà direzionalità LTR, uno arabo RTL); in ogni caso, sono abbastanza sicuro che in Unicode i caratteri sono stati disposti in maniera tale da rendere la direzionalità una proprietà ricavabile in maniera semplice dai codepoint senza necessariamente fare lookup "costosi".
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente bannato
    Registrato dal
    Sep 2012
    Messaggi
    465
    La frase che mi ha fatto capire è stata questa "è semplicemente una proprietà del carattere passato".
    Grazie MItaly!

    P.S.: Mi resta un dubbio ma ovviamente NON VOGLIO SAPERLO: Ma a che c@... serve sta roba!?!

  6. #6
    Originariamente inviato da peruzzo
    P.S.: Mi resta un dubbio ma ovviamente NON VOGLIO SAPERLO: Ma a che c@... serve sta roba!?!
    Se stai scrivendo codice di rendering ti serve eccome sapere se un carattere è LTR o RTL...
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #7
    Utente bannato
    Registrato dal
    Sep 2012
    Messaggi
    465
    codice di rendering? che roba è?!?

  8. #8
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da peruzzo
    codice di rendering? che roba è?!?
    Se devi visualizzare del testo a schermo (ad esempio, usando le API di Java Swing), chi si occupa della visualizzazione deve sapere in che direzione stampare il testo...
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  9. #9
    Utente bannato
    Registrato dal
    Sep 2012
    Messaggi
    465
    non ci sono ancora arrivato a quel punto ma ti seguo

    grazie mille

  10. #10
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da peruzzo
    non ci sono ancora arrivato a quel punto ma ti seguo

    grazie mille
    Tranqui che a meno di cose particolari non avrai bisogno di maneggiare la direzione di un testo
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.