Введение
В этом практическом занятии вы узнаете о методе toUnsignedString() в Java, который используется для преобразования значения типа long в объект String с незнаковым десятичным представлением. Вы узнаете, как использовать этот метод, что он принимает в качестве аргумента и что возвращает.
Инициализация значения long
Сначала мы создадим значение типа long и инициализируем его некоторыми данными. Мы будем использовать это значение в последующих примерах для преобразования его в незнаковую десятичную строку с использованием метода toUnsignedString().
long longValue = 3000000000L;
Преобразование long в незнаковую десятичную строку
Теперь мы будем использовать метод toUnsignedString(), чтобы преобразовать наше инициализированное значение типа long в незнаковую десятичную строку.
String unsignedString = Long.toUnsignedString(longValue);
Печать результата
Наконец, мы выведем результаты преобразования нашей незнаковой десятичной строки в консоль.
System.out.println("Unsigned String value: " + unsignedString);
Вот полный код для вышеописанных шагов:
public class LongToUnsignedString {
public static void main(String[] args) {
long longValue = 3000000000L;
String unsignedString = Long.toUnsignedString(longValue);
System.out.println("Unsigned String value: " + unsignedString);
}
}
При запуске кода вы увидите следующий вывод:
Unsigned String value: 3000000000
Обработка отрицательного значения long
В Java тип данных long также может хранить отрицательные значения. В этом шаге мы увидим, что произойдет, если мы попытаемся преобразовать отрицательное значение в незнаковую десятичную строку.
long longNegative = -123456789L;
String unsignedString = Long.toUnsignedString(longNegative);
Печать результата для отрицательного значения long
Теперь, когда у нас есть значение незнаковой десятичной строки, мы попытаемся вывести его в консоль с использованием метода System.out.println().
System.out.println("Unsigned Decimal String value: " + unsignedString);
Вот полный код:
public class LongToUnsignedString {
public static void main(String[] args) {
long longNegative = -123456789L;
String unsignedString = Long.toUnsignedString(longNegative);
System.out.println("Unsigned Decimal String value: " + unsignedString);
}
}
Вывод будет выглядеть так:
Unsigned Decimal String value: 18446743950276013727
Преобразование пользовательского значения long
В этом шаге мы создадим пользовательское значение типа long и преобразуем его в незнаковую десятичную строку с использованием метода toUnsignedString().
Для этого мы создадим объект Scanner для чтения из консоли, а затем сохраним введенное значение в переменную типа long.
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a number: ");
long userLong = scanner.nextLong();
После этого мы преобразуем пользовательское значение типа long в незнаковую десятичную строку с использованием метода toUnsignedString().
String unsignedString = Long.toUnsignedString(userLong);
Наконец, мы выведем преобразованное значение в консоль.
System.out.println("Unsigned String value: " + unsignedString);
Вот полный код:
import java.util.Scanner;
public class LongToUnsignedString {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a number: ");
long userLong = scanner.nextLong();
String unsignedString = Long.toUnsignedString(userLong);
System.out.println("Unsigned String value: " + unsignedString);
}
}
При запуске программы вас попросят ввести число в консоли. После ввода значения программа преобразует его в незнаковую десятичную строку и выводит ее в консоль.
Обработка некорректного ввода
В этом шаге мы модифицируем код из предыдущего шага для обработки некорректного ввода пользователя.
Во - первых, мы обернем код из шага 6 в блок try - catch, чтобы обработать любые исключения, которые могут возникнуть из - за некорректного ввода пользователя.
try {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a number: ");
long userLong = scanner.nextLong();
String unsignedString = Long.toUnsignedString(userLong);
System.out.println("Unsigned String value: " + unsignedString);
} catch (InputMismatchException exception) {
System.out.println("Invalid input: Please enter a valid long value.");
}
Блок try содержит тот же код, что и в шаге 6, для чтения ввода пользователя, преобразования его в незнаковую десятичную строку и вывода ее в консоль.
Блок catch ловит любое исключение InputMismatchException, которое может возникнуть из - за некорректного ввода пользователя, и выводит сообщение об ошибке в консоль, указывающее, что введенное значение не является допустимым значением типа long.
Вот полный код:
import java.util.InputMismatchException;
import java.util.Scanner;
public class LongToUnsignedString {
public static void main(String[] args) {
try {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a number: ");
long userLong = scanner.nextLong();
String unsignedString = Long.toUnsignedString(userLong);
System.out.println("Unsigned String value: " + unsignedString);
} catch (InputMismatchException exception) {
System.out.println("Invalid input: Please enter a valid long value.");
}
}
}
При запуске программы и вводе некорректного значения программа выведет сообщение об ошибке в консоль. Если вы введете допустимое значение типа long, программа преобразует его в незнаковую десятичную строку и выведет ее в консоль.
Резюме
В этом практическом занятии вы узнали о методе toUnsignedString() в Java, который используется для преобразования типа данных long в незнаковую десятичную строку. Вы также узнали с примерами, как использовать этот метод, что он принимает в качестве аргумента и что возвращает.
Вы узнали, как обрабатывать некорректный ввод для пользовательских значений типа long, а также как обрабатывать отрицательные значения типа long и выводить их в консоль в виде незнаковой десятичной строки.



