English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Determinar si una cadena es un identificador válido en Java

Para determinar si una cadena es un identificador válido de Java, utilice los métodos Character.isJavaIdentifierPart() y Character.isJavaIdentifierStart().

Character.isJavaIdentifierPart()

java.lang.Character.isJavaIdentifierPart() determina si el carácter (punto de código Unicode) puede ser parte de un identificador de Java, no como el primer carácter.

Si se cumple alguna de las siguientes condiciones, el carácter puede ser parte de un identificador de Java.

  • Es una carta

  • Es un símbolo monetario (por ejemplo, "$")

  • Es un carácter de puntuación conectado (por ejemplo, '_')

  • Es un número

  • Es un número alfanumérico (por ejemplo, caracteres de número romano)

Character.isJavaIdentifierStart()

java.lang.Character.isJavaIdentifierStart() determina si se permite que el carácter (punto de código Unicode) sea el primer carácter de un identificador de Java.

Y solo cuando una de las siguientes condiciones sea verdadera, el carácter puede comenzar un identificador de Java.

  • isLetter(ch) devuelve true

  • getType(ch) devuelve LETTER_NUMBER

  • El carácter referido es un símbolo monetario (por ejemplo, "$").

  • El carácter referido es un carácter de puntuación conectado (por ejemplo, "_").

A continuación se muestra un ejemplo de cómo verificar un carácter individual y toda la cadena de caracteres. Verifica si la cadena puede ser un identificador válido de Java.

Ejemplo

import java.util.*;
public class Demo {
   public static void main(String []args) {
      char ch1, ch2;
      ch1 = 's';
      ch2 = '_';
      String str = "jkv_yu";
      System.out.println("Verificando caracteres para estado de identificador válido...");
      boolean bool1, bool2;
      bool1 = Character.isJavaIdentifierPart(ch1);
      bool2 = Character.isJavaIdentifierStart(ch2);
      String str1 = ch1 + " puede ser parte de un identificador de Java = " + bool2;
      String str2 = ch2 + " puede comenzar un identificador de Java = " + bool2;
      System.out.println(str1);
      System.out.println(str2);
      System.out.println("\nVerificando una cadena completa para el estado de identificador válido...");
      System.out.println("La cadena a verificar: ""+str);
      if (str.length() == 0 || !Character.isJavaIdentifierStart(str.charAt(0))) {
         System.out.println("No es un identificador de Java válido");
      }
      for (int i = 1; i < str.length(); i++) {
         if (!Character.isJavaIdentifierPart(str.charAt(i))) {
            System.out.println("No es un identificador de Java válido");
         }
      }
      System.out.println("Identificador de Java válido");
   }
}

Resultados de salida

Verificando caracteres para el estado de identificador válido...
s puede ser parte de un identificador de Java = true
_ puede comenzar un identificador de Java = true
Verificando una cadena completa para el estado de identificador válido...
La cadena a verificar: jkv_yu
Identificador de Java válido