Spec-Zone.ru › OpenJDK 27

Класс HexFormat

java.lang.Object
java.util.HexFormat
public final class HexFormat extends Object
HexFormat преобразует байты в символы и шестнадцатеричные строки, которые могут содержать дополнительную разметку форматирования, например префиксы, суффиксы и разделители.

Для HexFormat предусмотрены две фабрики с заданными параметрами: of() и ofDelimiter(delimiter). Для других комбинаций параметров методы withXXX возвращают копии HexFormat, изменённые с помощью параметров withPrefix(String), withSuffix(String), withDelimiter(String) или выбора withUpperCase() либо withLowerCase().

Методы toHexDigits для преобразования примитивных типов в шестнадцатеричные строки включают toHexDigits(byte), toHexDigits(int) и toHexDigits(long) и другие. По умолчанию используются строчные символы "0-9","a-f". Для преобразований, формирующих шестнадцатеричные строки в верхнем регистре, используются символы "0-9","A-F". Учитывается только параметр HexFormat.isUpperCase(); разделитель, префикс и суффикс не используются.

Методы fromHexDigits для преобразования шестнадцатеричных строк в примитивные типы включают fromHexDigits(string), fromHexDigitsToLong(string), а fromHexDigit(int) преобразует один символ или кодовую точку. При преобразовании шестнадцатеричных символов цифры, а также символы верхнего и нижнего регистра из "0-9", "a-f", and "A-F" преобразуются в соответствующие значения 0-15. Разделитель, префикс, суффикс и параметр верхнего регистра не используются.

Методы formatHex для преобразования массива байтов в форматированную шестнадцатеричную строку включают formatHex(byte[]) и formatHex(Appendable, byte[]). Результат форматирования возвращается в виде строки или добавляется в Appendable, например StringBuilder или PrintStream. Каждое значение байта форматируется как префикс, два шестнадцатеричных символа в верхнем или нижнем регистре и суффикс. После каждого отформатированного значения, кроме последнего, следует разделитель. Для преобразований, формирующих шестнадцатеричные строки в верхнем регистре, используйте withUpperCase().

Методы parseHex для преобразования форматированной шестнадцатеричной строки в массив байтов включают parseHex(CharSequence) и parseHex(char[], offset, length). Каждое значение байта разбирается из префикса, двух шестнадцатеричных символов без учёта регистра и суффикса. После каждого отформатированного значения, кроме последнего, следует разделитель.

Примечание к API:
Например, отдельный байт преобразуется в строку шестнадцатеричных цифр с помощью toHexDigits(int), а строка преобразуется в примитивное значение с помощью fromHexDigits(string).
    HexFormat hex = HexFormat.of();
    byte b = 127;
    String byteStr = hex.toHexDigits(b);

    byte byteVal = (byte)hex.fromHexDigits(byteStr);
    assert(byteStr.equals("7f"));
    assert(b == byteVal);

    // The hexadecimal digits are: "7f"

Для формата с разделением запятыми (", "), префиксом ("#") и строчными шестнадцатеричными цифрами HexFormat имеет вид:

    HexFormat commaFormat = HexFormat.ofDelimiter(", ").withPrefix("#");
    byte[] bytes = {0, 1, 2, 3, 124, 125, 126, 127};
    String str = commaFormat.formatHex(bytes);

    byte[] parsed = commaFormat.parseHex(str);
    assert(Arrays.equals(bytes, parsed));

    // The formatted string is: "#00, #01, #02, #03, #7c, #7d, #7e, #7f"

Для отпечатка значений байтов с разделителем в виде двоеточия (":") и символами в верхнем регистре HexFormat имеет вид:

    HexFormat formatFingerprint = HexFormat.ofDelimiter(":").withUpperCase();
    byte[] bytes = {0, 1, 2, 3, 124, 125, 126, 127};
    String str = formatFingerprint.formatHex(bytes);
    byte[] parsed = formatFingerprint.parseHex(str);
    assert(Arrays.equals(bytes, parsed));

    // The formatted string is: "00:01:02:03:7C:7D:7E:7F"

Это класс, основанный на значениях; применение к экземплярам HexFormat операций, чувствительных к идентичности (в том числе сравнения по ссылке (==), вычисления хеш-кода идентичности или синхронизации), может привести к непредсказуемым результатам и его следует избегать. Для сравнения следует использовать метод equals.

Этот класс неизменяемый и потокобезопасный.

Если не указано иное, передача аргумента null любому методу приведёт к выбрасыванию исключения NullPointerException.

Начиная с:
17

Краткое описание методов

Модификатор и тип Метод Описание
String delimiter()
Возвращает разделитель между шестнадцатеричными значениями в форматированных шестнадцатеричных строках.
boolean equals(Object o)
Возвращает true, если другой объект является HexFormat с теми же параметрами.
String formatHex(byte[] bytes)
Возвращает шестнадцатеричную строку, сформированную из массива байтов.
String formatHex(byte[] bytes, int fromIndex, int toIndex)
Возвращает шестнадцатеричную строку, сформированную из диапазона массива байтов.
<A extends Appendable>
A
formatHex(A out, byte[] bytes)
Добавляет форматированные шестнадцатеричные строки, сформированные из массива байтов, в Appendable.
<A extends Appendable>
A
formatHex(A out, byte[] bytes, int fromIndex, int toIndex)
Добавляет форматированные шестнадцатеричные строки, сформированные из диапазона массива байтов, в Appendable.
static int fromHexDigit(int ch)
Возвращает значение для шестнадцатеричного символа или кодовой точки.
static int fromHexDigits(CharSequence string)
Возвращает значение int, полученное разбором строки длиной до восьми шестнадцатеричных символов.
static int fromHexDigits(CharSequence string, int fromIndex, int toIndex)
Возвращает значение int, полученное разбором диапазона строки длиной до восьми шестнадцатеричных символов.
static long fromHexDigitsToLong(CharSequence string)
Возвращает значение long, полученное разбором строки длиной до шестнадцати шестнадцатеричных символов.
static long fromHexDigitsToLong(CharSequence string, int fromIndex, int toIndex)
Возвращает значение long, полученное разбором диапазона строки длиной до шестнадцати шестнадцатеричных символов.
int hashCode()
Возвращает хеш-код для этого HexFormat.
static boolean isHexDigit(int ch)
Возвращает true, если символ является допустимым шестнадцатеричным символом или кодовой точкой.
boolean isUpperCase()
Возвращает true, если шестнадцатеричные цифры записаны в верхнем регистре, иначе false.
static HexFormat of()
Возвращает форматировщик шестнадцатеричных значений без разделителя и со строчными символами.
static HexFormat ofDelimiter(String delimiter)
Возвращает форматировщик шестнадцатеричных значений с разделителем и строчными символами.
byte[] parseHex(char[] chars, int fromIndex, int toIndex)
Возвращает массив байтов, содержащий шестнадцатеричные значения, полученные разбором диапазона массива символов.
byte[] parseHex(CharSequence string)
Возвращает массив байтов, содержащий шестнадцатеричные значения, полученные разбором строки.
byte[] parseHex(CharSequence string, int fromIndex, int toIndex)
Возвращает массив байтов, содержащий шестнадцатеричные значения, полученные разбором диапазона строки.
String prefix()
Возвращает префикс, используемый для каждого шестнадцатеричного значения в форматированных шестнадцатеричных строках.
String suffix()
Возвращает суффикс, используемый для каждого шестнадцатеричного значения в форматированных шестнадцатеричных строках.
String toHexDigits(byte value)
Возвращает два шестнадцатеричных символа для значения byte.
String toHexDigits(char value)
Возвращает четыре шестнадцатеричных символа для значения char.
String toHexDigits(int value)
Возвращает восемь шестнадцатеричных символов для значения int.
String toHexDigits(long value)
Возвращает шестнадцать шестнадцатеричных символов для значения long.
String toHexDigits(long value, int digits)
Возвращает до шестнадцати шестнадцатеричных символов для значения long.
String toHexDigits(short value)
Возвращает четыре шестнадцатеричных символа для значения short.
<A extends Appendable>
A
toHexDigits(A out, byte value)
Добавляет два шестнадцатеричных символа для значения байта в Appendable.
char toHighHexDigit(int value)
Возвращает шестнадцатеричный символ для старших 4 бит значения, рассматриваемого как байт.
char toLowHexDigit(int value)
Возвращает шестнадцатеричный символ для младших 4 бит значения, рассматриваемого как байт.
String toString()
Возвращает описание параметров форматировщика: верхний регистр, разделитель, префикс и суффикс.
HexFormat withDelimiter(String delimiter)
Возвращает копию этого HexFormat с разделителем.
HexFormat withLowerCase()
Возвращает копию этого HexFormat для использования строчных шестнадцатеричных символов.
HexFormat withPrefix(String prefix)
Возвращает копию этого HexFormat с префиксом.
HexFormat withSuffix(String suffix)
Возвращает копию этого HexFormat с суффиксом.
HexFormat withUpperCase()
Возвращает копию этого HexFormat для использования заглавных шестнадцатеричных символов.

Методы, объявленные в классе Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
protected void finalize()
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии.
Финализация объявлена устаревшей и подлежит удалению в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного времени.

Подробное описание методов

of

public static HexFormat of()
Возвращает форматировщик шестнадцатеричных значений без разделителя и со строчными символами. Разделитель, префикс и суффикс пусты. Методы withDelimiter, withUpperCase, withLowerCase, withPrefix и withSuffix возвращают копии форматировщиков с новыми параметрами.
Возвращает:
форматировщик шестнадцатеричных значений без разделителя и со строчными символами

ofDelimiter

public static HexFormat ofDelimiter(String delimiter)
Возвращает форматировщик шестнадцатеричных значений с разделителем и строчными символами. Префикс и суффикс пусты. Методы withDelimiter, withUpperCase, withLowerCase, withPrefix и withSuffix возвращают копии форматировщиков с новыми параметрами.
Параметры:
delimiter — разделитель, не null, может быть пустым
Возвращает:
HexFormat с разделителем и строчными символами

withDelimiter

public HexFormat withDelimiter(String delimiter)
Возвращает копию этого HexFormat с разделителем.
Параметры:
delimiter — разделитель, не null, может быть пустым
Возвращает:
копию этого HexFormat с разделителем

withPrefix

public HexFormat withPrefix(String prefix)
Возвращает копию этого HexFormat с префиксом.
Параметры:
prefix — префикс, не null, может быть пустым
Возвращает:
копию этого HexFormat с префиксом

withSuffix

public HexFormat withSuffix(String suffix)
Возвращает копию этого HexFormat с суффиксом.
Параметры:
suffix — суффикс, не null, может быть пустым
Возвращает:
копию этого HexFormat с суффиксом

withUpperCase

public HexFormat withUpperCase()
Возвращает копию этого HexFormat для использования прописных шестнадцатеричных символов. Прописные шестнадцатеричные символы: "0-9", "A-F".
Возвращает:
копию этого HexFormat с прописными шестнадцатеричными символами

withLowerCase

public HexFormat withLowerCase()
Возвращает копию этого HexFormat для использования строчных шестнадцатеричных символов. Строчные шестнадцатеричные символы: "0-9", "a-f".
Возвращает:
копию этого HexFormat со строчными шестнадцатеричными символами

delimiter

public String delimiter()
Возвращает разделитель между шестнадцатеричными значениями в отформатированных шестнадцатеричных строках.
Возвращает:
разделитель, не null, может быть пустым ""

prefix

public String prefix()
Возвращает префикс, используемый для каждого шестнадцатеричного значения в отформатированных шестнадцатеричных строках.
Возвращает:
префикс, не null, может быть пустым ""

suffix

public String suffix()
Возвращает суффикс, используемый для каждого шестнадцатеричного значения в отформатированных шестнадцатеричных строках.
Возвращает:
суффикс, не null, может быть пустым ""

isUpperCase

public boolean isUpperCase()
Возвращает true, если шестнадцатеричные цифры записаны в верхнем регистре, иначе возвращает false.
Возвращает:
true, если шестнадцатеричные цифры записаны в верхнем регистре, иначе false

formatHex

public String formatHex(byte[] bytes)
Возвращает шестнадцатеричную строку, сформированную из массива байтов. Каждое значение байта форматируется как префикс, два шестнадцатеричных символа, выбранных из набора прописных или строчных цифр, и суффикс. За каждым отформатированным значением, кроме последнего, следует разделитель. Поведение эквивалентно formatHex(bytes, 0, bytes.length)).
Параметры:
bytes — массив байтов, не null
Возвращает:
строку с шестнадцатеричным представлением массива байтов

formatHex

public String formatHex(byte[] bytes, int fromIndex, int toIndex)
Возвращает шестнадцатеричную строку, сформированную из диапазона массива байтов. Каждое значение байта форматируется как префикс, два шестнадцатеричных символа, выбранных из набора прописных или строчных цифр, и суффикс. За каждым отформатированным значением, кроме последнего, следует разделитель.
Параметры:
bytes — массив байтов, не null
fromIndex — начальный индекс диапазона, включительно
toIndex — конечный индекс диапазона, не включительно
Возвращает:
строку с шестнадцатеричным представлением каждого байта диапазона массива
Вызывает исключение:
IndexOutOfBoundsException — если диапазон массива выходит за допустимые границы

formatHex

public <A extends Appendable> A formatHex(A out, byte[] bytes)
Добавляет отформатированные шестнадцатеричные строки из массива байтов в Appendable. Каждое значение байта форматируется как префикс, два шестнадцатеричных символа, выбранных из набора прописных или строчных цифр, и суффикс. За каждым отформатированным значением, кроме последнего, следует разделитель. Отформатированные шестнадцатеричные строки добавляются в результате нуля или более вызовов методов Appendable.
Параметры типа:
A — тип Appendable
Параметры:
out — Appendable, не null
bytes — массив байтов
Возвращает:
Appendable
Вызывает исключение:
UncheckedIOException — если при добавлении в выходной поток возникает исключение ввода-вывода

formatHex

public <A extends Appendable> A formatHex(A out, byte[] bytes, int fromIndex, int toIndex)
Добавляет отформатированные шестнадцатеричные строки из диапазона массива байтов в Appendable. Каждое значение байта форматируется как префикс, два шестнадцатеричных символа, выбранных из набора прописных или строчных цифр, и суффикс. За каждым отформатированным значением, кроме последнего, следует разделитель. Отформатированные шестнадцатеричные строки добавляются в результате нуля или более вызовов методов Appendable.
Параметры типа:
A — тип Appendable
Параметры:
out — Appendable, не null
bytes — массив байтов, не null
fromIndex — начальный индекс диапазона, включительно
toIndex — конечный индекс диапазона, не включительно.
Возвращает:
Appendable
Вызывает исключение:
IndexOutOfBoundsException — если диапазон массива выходит за допустимые границы
UncheckedIOException — если при добавлении в выходной поток возникает исключение ввода-вывода

parseHex

public byte[] parseHex(CharSequence string)
Возвращает массив байтов, содержащий шестнадцатеричные значения, разобранные из строки. Каждое значение байта разбирается из префикса, двух шестнадцатеричных символов без учета регистра и суффикса. За каждым отформатированным значением, кроме последнего, следует разделитель. Строки разделителя, префикса и суффикса должны присутствовать; они могут быть пустыми. Допустимая строка состоит только из указанного выше формата.
Параметры:
string — строка, содержащая значения байтов с префиксом, шестнадцатеричными цифрами, суффиксом и разделителями
Возвращает:
массив байтов со значениями, разобранными из строки
Вызывает исключение:
IllegalArgumentException — если для какого-либо значения байта отсутствует префикс или суффикс, значения байтов не являются шестнадцатеричными символами либо после всех значений байтов, кроме последнего, отсутствует разделитель

parseHex

public byte[] parseHex(CharSequence string, int fromIndex, int toIndex)
Возвращает массив байтов, содержащий шестнадцатеричные значения, разобранные из диапазона строки. Каждое значение байта разбирается из префикса, двух шестнадцатеричных символов без учета регистра и суффикса. За каждым отформатированным значением, кроме последнего, следует разделитель. Строки разделителя, префикса и суффикса должны присутствовать; они могут быть пустыми. Допустимая строка состоит только из указанного выше формата.
Параметры:
string — диапазон строки, содержащий шестнадцатеричные цифры, разделители, префикс и суффикс.
fromIndex — начальный индекс диапазона, включительно
toIndex — конечный индекс диапазона, не включительно.
Возвращает:
массив байтов со значениями, разобранными из диапазона строки
Вызывает исключение:
IllegalArgumentException — если для какого-либо значения байта отсутствует префикс или суффикс, значения байтов не являются шестнадцатеричными символами либо после всех значений байтов, кроме последнего, отсутствует разделитель
IndexOutOfBoundsException — если диапазон строки выходит за допустимые границы

parseHex

public byte[] parseHex(char[] chars, int fromIndex, int toIndex)
Возвращает массив байтов, содержащий шестнадцатеричные значения, разобранные из диапазона массива символов. Каждое значение байта разбирается из префикса, двух шестнадцатеричных символов без учета регистра и суффикса. За каждым отформатированным значением, кроме последнего, следует разделитель. Строки разделителя, префикса и суффикса должны присутствовать; они могут быть пустыми. Допустимый диапазон массива символов состоит только из указанного выше формата.
Параметры:
chars — диапазон массива символов, содержащий четное число шестнадцатеричных цифр, разделители, префикс и суффикс.
fromIndex — начальный индекс диапазона, включительно
toIndex — конечный индекс диапазона, не включительно.
Возвращает:
массив байтов со значениями, разобранными из диапазона массива символов
Вызывает исключение:
IllegalArgumentException — если для какого-либо значения байта отсутствует префикс или суффикс, значения байтов не являются шестнадцатеричными символами либо после всех значений байтов, кроме последнего, отсутствует разделитель
IndexOutOfBoundsException — если диапазон массива символов выходит за допустимые границы

toLowHexDigit

public char toLowHexDigit(int value)
Возвращает шестнадцатеричный символ для младших 4 бит значения, рассматриваемого как байт. Если параметр isUpperCase() равен true, то для значений 10-15 возвращается прописной символ "A-F", в противном случае возвращается строчный символ "a-f". Значения в диапазоне 0-9 возвращаются как "0-9".
Параметры:
value — значение; используются только его младшие 4 бита 0-3
Возвращает:
шестнадцатеричный символ для младших 4 бит 0-3 значения

toHighHexDigit

public char toHighHexDigit(int value)
Возвращает шестнадцатеричный символ для старших 4 бит значения, рассматриваемого как байт. Если параметр isUpperCase() равен true, то для значений 10-15 возвращается прописной символ "A-F", в противном случае возвращается строчный символ "a-f". Значения в диапазоне 0-9 возвращаются как "0-9".
Параметры:
value — значение; используются только его биты 4-7
Возвращает:
шестнадцатеричный символ для битов 4-7 значения

toHexDigits

public <A extends Appendable> A toHexDigits(A out, byte value)
Добавляет два шестнадцатеричных символа для значения байта в Appendable. Каждый полубайт (4 бита) значения, от старшего к младшему, форматируется так же, как в методе toLowHexDigit(nibble). Шестнадцатеричные символы добавляются в результате одного или нескольких вызовов методов Appendable. Разделитель, префикс и суффикс не используются.
Параметры типа:
A — тип Appendable
Параметры:
out — Appendable, не null
value — значение байта
Возвращает:
Appendable
Вызывает исключение:
UncheckedIOException — если при добавлении в выходной поток возникает исключение ввода-вывода

toHexDigits

public String toHexDigits(byte value)
Возвращает два шестнадцатеричных символа для значения byte. Каждый полубайт (4 бита) значения, от старшего к младшему, форматируется так же, как в методе toLowHexDigit(nibble). Разделитель, префикс и суффикс не используются.
Параметры:
value — значение байта
Возвращает:
два шестнадцатеричных символа для значения байта

toHexDigits

public String toHexDigits(char value)
Возвращает четыре шестнадцатеричных символа для значения char. Каждый полубайт (4 бита) значения, от старшего к младшему, форматируется так же, как в методе toLowHexDigit(nibble). Разделитель, префикс и суффикс не используются.
Параметры:
value — значение типа char
Возвращает:
четыре шестнадцатеричных символа для значения char

toHexDigits

public String toHexDigits(short value)
Возвращает четыре шестнадцатеричных символа для значения short. Каждый полубайт (4 бита) значения, от старшего к младшему, форматируется так же, как в методе toLowHexDigit(nibble). Разделитель, префикс и суффикс не используются.
Параметры:
value — значение типа short
Возвращает:
четыре шестнадцатеричных символа для значения short

toHexDigits

public String toHexDigits(int value)
Возвращает восемь шестнадцатеричных символов для значения int. Каждый полубайт (4 бита) значения, от старшего к младшему, форматируется так же, как в методе toLowHexDigit(nibble). Разделитель, префикс и суффикс не используются.
Параметры:
value — значение типа int
Возвращает:
восемь шестнадцатеричных символов для значения int
См. также:
  • Integer.toHexString(int)

toHexDigits

public String toHexDigits(long value)
Возвращает шестнадцать шестнадцатеричных символов для значения long. Каждый полубайт (4 бита) значения, от старшего к младшему, форматируется так же, как в методе toLowHexDigit(nibble). Разделитель, префикс и суффикс не используются.
Параметры:
value — значение типа long
Возвращает:
шестнадцать шестнадцатеричных символов для значения long
См. также:
  • Long.toHexString(long)

toHexDigits

public String toHexDigits(long value, int digits)
Возвращает до шестнадцати шестнадцатеричных символов для значения long. Каждый полубайт (4 бита) значения, от старшего к младшему, форматируется так же, как в методе toLowHexDigit(nibble). Разделитель, префикс и суффикс не используются.
Параметры:
value — значение типа long
digits — количество возвращаемых шестнадцатеричных цифр, от 0 до 16
Возвращает:
шестнадцатеричные символы для значения long
Вызывает исключение:
IllegalArgumentException — если digits отрицательно или больше 16

isHexDigit

public static boolean isHexDigit(int ch)
Возвращает true, если символ является допустимым шестнадцатеричным символом или кодовой точкой. Допустимые шестнадцатеричные символы:
  • '0' ('\u0030') — '9' ('\u0039') включительно,
  • 'A' ('\u0041') — 'F' ('\u0046') включительно и
  • 'a' ('\u0061') — 'f' ('\u0066') включительно.
Параметры:
ch — кодовая точка
Возвращает:
true, если символ является допустимым шестнадцатеричным символом, иначе false

fromHexDigit

public static int fromHexDigit(int ch)
Возвращает значение для шестнадцатеричного символа или кодовой точки. Значение равно:
  • (ch - '0') для диапазона от '0' до '9' включительно,
  • (ch - 'A' + 10) для диапазона от 'A' до 'F' включительно и
  • (ch - 'a' + 10) для диапазона от 'a' до 'f' включительно.
Параметры:
ch — символ или кодовая точка
Возвращает:
значение 0-15
Вызывает исключение:
NumberFormatException — если кодовая точка не является шестнадцатеричным символом

fromHexDigits

public static int fromHexDigits(CharSequence string)
Возвращает значение int, разобранное из строки длиной до восьми шестнадцатеричных символов. Шестнадцатеричные символы разбираются от старшего к младшему с помощью fromHexDigit(int) для формирования беззнакового значения. Значение дополняется нулями до 32 бит и возвращается как int.
Примечание по API:
Integer.parseInt(s, 16) и Integer.parseUnsignedInt(s, 16) работают похожим образом, но допускают все шестнадцатеричные цифры Юникода, определенные методом Character.digit(ch, 16). HexFormat использует только шестнадцатеричные символы "0-9", "A-F" и "a-f". Строки со знаковым шестнадцатеричным числом можно разобрать с помощью Integer.parseInt(String, int).
Параметры:
string — CharSequence, содержащий до восьми шестнадцатеричных символов
Возвращает:
значение, разобранное из строки
Вызывает исключение:
IllegalArgumentException — если длина строки превышает восемь (8) символов или если какой-либо из символов не является шестнадцатеричным

fromHexDigits

public static int fromHexDigits(CharSequence string, int fromIndex, int toIndex)
Возвращает значение int, разобранное из диапазона строки длиной до восьми шестнадцатеричных символов. Символы диапазона от fromIndex до toIndex, не включая конечный индекс, разбираются от старшего к младшему с помощью fromHexDigit(int) для формирования беззнакового значения. Значение дополняется нулями до 32 бит и возвращается как int.
Примечание по API:
Integer.parseInt(s, 16) и Integer.parseUnsignedInt(s, 16) работают похожим образом, но допускают все шестнадцатеричные цифры Юникода, определенные методом Character.digit(ch, 16). HexFormat использует только шестнадцатеричные символы "0-9", "A-F" и "a-f". Строки со знаковым шестнадцатеричным числом можно разобрать с помощью Integer.parseInt(String, int).
Параметры:
string — CharSequence, содержащий символы
fromIndex — начальный индекс диапазона, включительно
toIndex — конечный индекс диапазона, не включительно.
Возвращает:
значение, разобранное из диапазона строки
Вызывает исключение:
IndexOutOfBoundsException — если диапазон выходит за допустимые границы CharSequence
IllegalArgumentException — если длина диапазона превышает восемь (8) символов или если какой-либо из символов не является шестнадцатеричным

fromHexDigitsToLong

public static long fromHexDigitsToLong(CharSequence string)
Возвращает значение long, разобранное из строки длиной до шестнадцати шестнадцатеричных символов. Шестнадцатеричные символы разбираются от старшего к младшему с помощью fromHexDigit(int) для формирования беззнакового значения. Значение дополняется нулями до 64 бит и возвращается как long.
Примечание по API:
Long.parseLong(s, 16) и Long.parseUnsignedLong(s, 16) работают похожим образом, но допускают все шестнадцатеричные цифры Юникода, определенные методом Character.digit(ch, 16). HexFormat использует только шестнадцатеричные символы "0-9", "A-F" и "a-f". Строки со знаковым шестнадцатеричным числом можно разобрать с помощью Long.parseLong(String, int).
Параметры:
string — CharSequence, содержащий до шестнадцати шестнадцатеричных символов
Возвращает:
значение, разобранное из строки
Вызывает исключение:
IllegalArgumentException — если длина строки превышает шестнадцать (16) символов или если какой-либо из символов не является шестнадцатеричным

fromHexDigitsToLong

public static long fromHexDigitsToLong(CharSequence string, int fromIndex, int toIndex)
Возвращает значение long, разобранное из диапазона строки длиной до шестнадцати шестнадцатеричных символов. Символы диапазона от fromIndex до toIndex, не включая конечный индекс, разбираются от старшего к младшему с помощью fromHexDigit(int) для формирования беззнакового значения. Значение дополняется нулями до 64 бит и возвращается как long.
Примечание по API:
Long.parseLong(s, 16) и Long.parseUnsignedLong(s, 16) работают похожим образом, но допускают все шестнадцатеричные цифры Юникода, определенные методом Character.digit(ch, 16). HexFormat использует только шестнадцатеричные символы "0-9", "A-F" и "a-f". Строки со знаковым шестнадцатеричным числом можно разобрать с помощью Long.parseLong(String, int).
Параметры:
string — CharSequence, содержащий символы
fromIndex — начальный индекс диапазона, включительно
toIndex — конечный индекс диапазона, не включительно.
Возвращает:
значение, разобранное из диапазона строки
Вызывает исключение:
IndexOutOfBoundsException — если диапазон выходит за допустимые границы CharSequence
IllegalArgumentException — если длина диапазона превышает шестнадцать (16) символов или если какой-либо из символов не является шестнадцатеричным

equals

public boolean equals(Object o)
Возвращает true, если другой объект является HexFormat с теми же параметрами.
Переопределяет:
equals в классе Object
Параметры:
o — объект, может быть null
Возвращает:
true, если другой объект является HexFormat и параметры uppercase, delimiter, prefix и suffix равны; иначе false
См. также:
  • Object.hashCode()
  • HashMap

hashCode

public int hashCode()
Возвращает хеш-код этого HexFormat.
Переопределяет:
hashCode в классе Object
Возвращает:
хеш-код этого HexFormat
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(Object)

toString

public String toString()
Возвращает описание параметров форматтера: верхний регистр, разделитель, префикс и суффикс.
Переопределяет:
toString in class Object
Возвращает:
описание этого HexFormat

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API