Introdução
Neste laboratório, você aprenderá sobre o método toUnsignedString() do Java, que é usado para converter um valor long em um objeto String decimal sem sinal (unsigned). Você aprenderá como usar o método, quais argumentos ele recebe e o que ele retorna.
Inicializando um valor long
Primeiramente, criaremos um valor long e o inicializaremos com alguns dados. Usaremos este valor em exemplos posteriores para convertê-lo em uma string decimal sem sinal (unsigned) usando o método toUnsignedString().
long longValue = 3000000000L;
Convertendo long para String Decimal Sem Sinal
Agora, usaremos o método toUnsignedString() para converter nosso valor long inicializado em uma String decimal sem sinal (unsigned).
String unsignedString = Long.toUnsignedString(longValue);
Imprimindo o Resultado
Finalmente, imprimiremos os resultados da nossa String decimal sem sinal convertida no console.
System.out.println("Unsigned String value: " + unsignedString);
Aqui está o código completo para as etapas acima:
public class LongToUnsignedString {
public static void main(String[] args) {
long longValue = 3000000000L;
String unsignedString = Long.toUnsignedString(longValue);
System.out.println("Unsigned String value: " + unsignedString);
}
}
Quando você executar o código, verá a seguinte saída:
Unsigned String value: 3000000000
Tratamento de Valores Long Negativos
Em Java, os tipos de dados long também podem armazenar valores negativos. Nesta etapa, veremos o que acontece quando tentamos converter um valor negativo em uma String decimal sem sinal (unsigned).
long longNegative = -123456789L;
String unsignedString = Long.toUnsignedString(longNegative);
Imprimindo o Resultado para Valores Long Negativos
Agora que temos o valor da String decimal sem sinal, tentaremos imprimi-lo no console usando o método System.out.println().
System.out.println("Unsigned Decimal String value: " + unsignedString);
Aqui está o código completo:
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);
}
}
A saída terá esta aparência:
Unsigned Decimal String value: 18446743950276013727
Conversão de Valor Long Definida pelo Usuário
Nesta etapa, criaremos um valor long definido pelo usuário e o converteremos em uma String decimal sem sinal usando o método toUnsignedString().
Para fazer isso, criaremos um objeto scanner para ler do console e, em seguida, armazenaremos o valor escaneado em uma variável long.
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a number: ");
long userLong = scanner.nextLong();
Depois disso, converteremos o valor long definido pelo usuário em uma string decimal sem sinal usando o método toUnsignedString().
String unsignedString = Long.toUnsignedString(userLong);
Finalmente, imprimiremos o valor convertido no console.
System.out.println("Unsigned String value: " + unsignedString);
Aqui está o código completo:
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);
}
}
Quando você executar o código, será solicitado que você insira um número no console. Depois de inserir um valor, o programa o converterá em um valor String decimal sem sinal e o imprimirá no console.
Tratamento de Entrada Inválida
Nesta etapa, modificaremos o código da etapa anterior para lidar com entradas inválidas do usuário.
Primeiro, envolveremos o código da etapa 6 em um bloco try-catch para lidar com quaisquer exceções que possam ocorrer devido a entradas inválidas do usuário.
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.");
}
O bloco try contém o mesmo código da etapa 6 para ler a entrada do usuário, convertê-la em uma String decimal sem sinal e imprimi-la no console.
O bloco catch captura qualquer InputMismatchException que possa ocorrer devido a uma entrada inválida do usuário e imprime uma mensagem de erro no console, indicando que a entrada não era um valor long válido.
Aqui está o código completo:
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.");
}
}
}
Quando você executa o código e insere uma entrada inválida, o programa imprimirá uma mensagem de erro no console. Se você inserir um valor long válido, o programa o converterá em um valor String decimal sem sinal e o imprimirá no console.
Resumo
Neste laboratório, você aprendeu sobre o método toUnsignedString() do Java, usado para converter um tipo de dado long em uma String decimal sem sinal. Você também aprendeu com exemplos como usar este método, o que ele recebe como argumento e o que ele retorna.
Você aprendeu como lidar com entradas inválidas para valores long definidos pelo usuário e como lidar com valores long negativos e imprimi-los no console em sua representação String decimal sem sinal.



