Метод codePointAt
Метод codePointAt возвращает целочисленное значение кодовой точки Unicode для символа, расположенного по указанному индексу в строке. В отличие от метода charAt, который возвращает тип char (16-битное значение), метод codePointAt корректно работает с символами, выходящими за пределы базовой многоязычной плоскости (BMP), которые в Java представлены суррогатными парами. В параметр метода мы передаем индекс символа в строке, начиная с нуля.
Синтаксис
str.codePointAt(index)
Пример
Давайте получим кодовую точку символа, стоящего на позиции 0 в строке:
public class Main
{
public static void main(String[] args)
{
String str = "abcde";
int res = str.codePointAt(0);
System.out.println(res);
}
}
Результат выполнения кода:
97
Пример
Давайте получим кодовую точку символа, стоящего на позиции 2 в строке:
public class Main
{
public static void main(String[] args)
{
String str = "abcde";
int res = str.codePointAt(2);
System.out.println(res);
}
}
Результат выполнения кода:
99
Пример
Давайте получим кодовую точку для символа, представленного суррогатной парой (эмодзи):
public class Main
{
public static void main(String[] args)
{
String str = "a😀b";
int res = str.codePointAt(1);
System.out.println(res);
}
}
Результат выполнения кода:
128512
Смотрите также
-
метод
charAt,
который возвращает символ по индексу -
метод
codePoints,
который возвращает поток кодовых точек -
метод
length,
который возвращает длину строки -
метод
substring,
который вырезает подстроку