Character.offsetByCodePoints() en Java con ejemplos

El Character.offsetByCodePoints(char[] a, int start, int count, int index, int codePointOffset)es un método incorporado en Java que devuelve el índice dentro del subarreglo de caracteres dado que se compensa del índice dado por puntos de código codePointOffset. Los argumentos start y count especifican un subarreglo del arreglo char. Los suplentes no emparejados dentro del rango de texto proporcionado por index y codePointOffset cuentan como un punto de código cada uno. El método offsetByCodePoints(char[] a, int start, int count, int index, int codePointOffset) de la clase Character es estático, por lo que se debe acceder de forma estática. Por lo general, se llama a un método no estático declarando nombre_método (argumento). Pero en este caso, dado que es un método estático, el nombre de la clase se agrega como sufijo durante la llamada. Se puede encontrar un problema de compilación si se intenta llamar al método java offsetByCodePoints() de una manera no estática. 

Sintaxis:

public static int offsetByCodePoints(char[] a, int start, int count, int index,
int codePointOffset)

Parámetros:

  • a: la array de caracteres
  • inicio: el índice del primer carácter del subarreglo
  • count: la longitud del subarreglo en caracteres
  • índice: el índice a compensar
  • codePointOffset: el desplazamiento en puntos de código

Valor devuelto: Este método devuelve un valor de tipo entero, es decir, el índice, dentro del subarreglo. 

Excepciones:

  • NullPointerException: si a es nulo.
  • IndexOutOfBoundsException: si start o count es negativo, o si start + count es mayor que la longitud de la array dada, o si index es menor que start o mayor que start + count , o si codePointOffset es positivo y el rango de texto comienza con index y finaliza con start + count: 1 tiene menos puntos de código que codePointOffset , o si codePointOffset es negativo y el rango de texto comienza con start y termina con index: 1 tiene menos que el valor absoluto de los puntos de código codePointOffset.

El siguiente programa ilustra el método Character.offsetByCodePoints(): 

Java

//Java program for offsetByCodePoints() method
import java.lang.*;
public class gfg {
   public static void main(String[] args) {
      // Creating a char array c_arr and assigning values
      char[] c_arr = new char[] {'g','e','e','k','s'};
 
      // Integer primitives
      int s = 1;
      int c= 4;
 
      // Creating and assigning result of offsetByCodePoints
      // On subarray of c_arr to r
     int r = Character.offsetByCodePoints(c_arr, s, c, 1, 2);
 
      String st = "The index within the subarray is " + r;
 
      System.out.println(st);
   }
}
Producción:

The index within the subarray is 3

Referencia: https://docs.oracle.com/javase/7/docs/api/java/lang/Character.html#offsetByCodePoints(char[],%20int,%20int,%20int,%20int)

Publicación traducida automáticamente

Artículo escrito por Twinkl Bajaj y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *