Java.lang.Character.isJavaIdentifierStart() Method



The java.lang.Character.isJavaIdentifierStart(int codePoint) determines if the character (Unicode code point) is permissible as the first character in a Java identifier.

A character may start a Java identifier if and only if one of the following conditions is true −

  • isLetter(ch) returns true

  • getType(ch) returns LETTER_NUMBER

  • the referenced character is a currency symbol (such as '$')

  • the referenced character is a connecting punctuation character (such as '_').


Following is the declaration for java.lang.Character.isJavaIdentifierStart() method

public static boolean isJavaIdentifierStart(int codePoint)


codePoint − the character (Unicode code point) to be tested

Return Value

This method returns true if the character may start a Java identifier, false otherwise.




The following example shows the usage of lang.Character.isJavaIdentifierStart() method.

package com.tutorialspoint;

import java.lang.*;

public class CharacterDemo {

   public static void main(String[] args) {

      // create 2 int primitives cp1, cp2
      int cp1, cp2;

      // assign values to cp1, cp2
      cp1 = 0x0034;
      cp2 = 0x004a;

      // create 2 boolean primitives b1, b2
      boolean b1, b2;

       *  check if characters represented by cp1, cp2 can start a
       *  java identifier and assign results to b1, b2
      b1 = Character.isJavaIdentifierStart(cp1);
      b2 = Character.isJavaIdentifierStart(cp2);

      String str1 = "cp1 may start a Java identifier is " + b1;
      String str2 = "cp2 may start a Java identifier is " + b2;

      // print b1, b2 values
      System.out.println( str1 );
      System.out.println( str2 );

Let us compile and run the above program, this will produce the following result −

cp1 may start a Java identifier is false
cp2 may start a Java identifier is true