Come confrontare i caratteri di programmazione Java

November 9

Come confrontare i caratteri di programmazione Java


Come sviluppatore Java, è possibile confrontare i caratteri all'interno dei vostri programmi. Java memorizza i personaggi in un modo che permette di confrontare facilmente. Personaggi e interi vengono memorizzati in modo simile a Java, in modo da caratteri vengono confrontati con i loro valori numerici. Nella maggior parte dei casi, il confronto di carattere comporta capire quale personaggio si verifica per prima in ordine alfabetico, nel qual caso è considerato basso. Confrontando i personaggi possono essere una funzione utile al momento di organizzare le stringhe di testo se si prevede di memorizzarli in ordine alfabetico.

istruzione

1 Preparare due personaggi nel programma Java. Si sia possibile creare primitive variabili di tipo carattere direttamente o utilizzare i caratteri che si verificano in tutte le stringhe di testo che avete. Il seguente codice di esempio illustra entrambi i metodi:

char PrimoCar = 'g';

String fullString = "mela";

char secondChar = fullString.charAt (1); // 'p'

Il codice crea due variabili di carattere. Entrambi sono minuscole lettere alfabetiche, "G" e "P", rispettivamente.

2 Confronta i tuoi personaggi. Il codice di esempio riportato di seguito illustra confrontando i due personaggi per determinare quale è il primo in ordine alfabetico:

if (PrimoCar <secondChar) System.out.println ( "Il primo carattere viene prima");

else if (secondChar <PrimoCar) System.out.println ( "Second personaggio viene prima");

altro System.out.println ( "Entrambi i personaggi sono uguali");

Il confronto funziona allo stesso modo confrontare due numeri, o un carattere è maggiore o sono uguali. Salvare il codice, compilare ed eseguirlo per visualizzare l'output. Esperimento alterando le variabili carattere per verificare che il confronto funziona esattamente.

3 Confronto personaggi con diversi casi. caratteri maiuscoli e minuscoli sono rappresentati in Java utilizzando valori diversi. Per questo motivo, i confronti possono a volte avere risultati imprevisti. Modificare la prima riga del codice come segue per dimostrare la differenza:

char PrimoCar = 'S';

Eseguire il programma, dovrebbe emettere il seguente:

Primo carattere viene prima

Questo può essere inaspettato come la lettera "S" è successiva alfabetico che la lettera "p". Java rappresenta i caratteri di tipo primitivo che utilizzano i loro valori ASCII, con lettere maiuscole rappresentato con numeri più bassi. Tenete questo problema in mente quando si confrontano caratteri.

4 Utilizzare oggetti di carattere per rappresentare i tuoi personaggi. Il linguaggio Java fornisce la classe di caratteri per modellare personaggi come oggetti piuttosto che i tipi primitivi. Utilizzare questi oggetti nel codice come segue:

Carattere firstCharacter = nuovo personaggio ( 'v');

Carattere secondCharacter = nuovo personaggio ( 't');

La classe di caratteri è una classe wrapper per il tipo primitivo "char". oggetti caratteri sono istanziati passando il personaggio rappresentato nella sua forma primitiva di tipo come parametro al costruttore della classe, come in questo esempio.

5 Confronta i vostri oggetti di carattere. La classe Character fornisce un metodo di confronto come segue:

int result = firstCharacter.compareTo (secondCharacter);

if (risultato <0) System.out.println ( "primo carattere viene prima");

else if (risultato> 0) System.out.println ( "secondo carattere viene prima");

altro System.out.println ( "Entrambi i personaggi sono uguali");

Inserisci questo codice e testare il programma di nuovo, dovrebbe emettere il seguente:

Secondo personaggio viene prima

Si noti che i caratteri maiuscoli sono ancora rappresentati come più bassa di valore quando si utilizza la classe di caratteri.

Consigli e avvertenze

  • È possibile evitare l'emissione di caratteri maiuscoli che hanno valori più bassi utilizzando il metodo oggetto String "compareToIgnoreCase" invece di confrontare singoli caratteri.
  • Il tuo codice può comportarsi in modo imprevedibile se si confrontano i caratteri non alfanumerici.