Java Character isLowSurrogate() Method



Description

The Java Character isLowSurrogate(char ch) determines if the given char value is a Unicode low-surrogate code unit (also known as trailing-surrogate code unit).

Such values do not represent characters by themselves, but are used in the representation of supplementary characters in the UTF-16 encoding.

Declaration

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

public static boolean isLowSurrogate(char ch)

Parameters

ch − the char value to be tested

Return Value

This method returns true if the char value is between MIN_LOW_SURROGATE and MAX_LOW_SURROGATE inclusive, false otherwise.

Exception

NA

Checking a Char to be low Surrogate Example

The following example shows the usage of Java Character isLowSurrogate() method. In this example, we've created two char variables and assigned them two unicode values. Now using isLowSurrogate() method, we're checking if these char values lies in low surrogate range.

package com.tutorialspoint;

public class CharacterDemo {

   public static void main(String[] args) {

      // create 2 char primitives ch1, ch2
      char ch1, ch2;

      // assign values to ch1, ch2
      ch1 = '\udc28';
      ch2 = 'a';

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

      /**
       *  check if ch1, ch2 are Unicode low-surrogate code units
       *  and assign results to b1, b2
       */
      b1 = Character.isLowSurrogate(ch1);
      b2 = Character.isLowSurrogate(ch2);

      String str1 = "ch1 is a Unicode low-surrogate is " + b1;
      String str2 = ch2 + " is a Unicode low-surrogate 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 −

ch1 is a Unicode low-surrogate is true
a is a Unicode low-surrogate is false

Checking a Char to be low Surrogate Example

The following example shows the usage of Java Character isLowSurrogate() method. In this example, we've created two char variables and assigned them two unicode values. Now using isLowSurrogate() method, we're checking if these char values lies in low surrogate range.

package com.tutorialspoint;

public class CharacterDemo {
   public static void main(String[] args) {

      // create 2 char primitives ch1, ch2
      char ch1, ch2;

      // assign values to ch1, ch2
      ch1 = '\u0c7f';
      ch2 = '\ud8b5';

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

      // assign isLowSurrogate results of ch1, ch2 to b1, b2
      b1 = Character.isLowSurrogate(ch1);
      b2 = Character.isLowSurrogate(ch2);
      String str1 = "ch1 is a Unicode low-surrogate code unit is " + b1;
      String str2 = "ch2 is a Unicode low-surrogate code unit is " + b2;

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

Output

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

ch1 is a Unicode low-surrogate code unit is false
ch2 is a Unicode low-surrogate code unit is false

Checking a Char to be low Surrogate Example

Another sample program that makes use of the conditional statements to determine whether the argument passed is a high-surrogate or not, as the return type of this method is boolean, can be seen below −

package com.tutorialspoint;

public class Demo {
   public static void main(String[] args) {
      char ch1 = '\ud800';
      if(Character.isLowSurrogate(ch1))
         System.out.println("The character is a Unicode low-surrogate code unit");
      else
         System.out.println("The character is not a Unicode low-surrogate code unit");
   }
}

Output

The following output is obtained and displayed after the method is executed −

The character is not a Unicode low-surrogate code unit
java_lang_character.htm
Advertisements