Conversión de Cadena Sin Signo de Long en Java

JavaJavaBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderás sobre el método toUnsignedString() de Java que se utiliza para convertir un valor long en un objeto String decimal sin signo. Aprenderás cómo utilizar el método, qué toma como argumento y qué devuelve.

Inicializando un valor long

Primero, crearemos un valor long y lo inicializaremos con algunos datos. Utilizaremos este valor en los ejemplos posteriores para convertirlo en una cadena decimal sin signo utilizando el método toUnsignedString().

long longValue = 3000000000L;

Convertir long a cadena decimal sin signo

Ahora, usaremos el método toUnsignedString() para convertir nuestro valor long inicializado en una cadena decimal sin signo.

String unsignedString = Long.toUnsignedString(longValue);

Imprimiendo el resultado

Finalmente, imprimiremos los resultados de nuestra cadena decimal sin signo convertida en la consola.

System.out.println("Unsigned String value: " + unsignedString);

A continuación, se muestra el código completo para los pasos anteriores:

public class LongToUnsignedString {
    public static void main(String[] args) {
        long longValue = 3000000000L;
        String unsignedString = Long.toUnsignedString(longValue);
        System.out.println("Unsigned String value: " + unsignedString);
    }
}

Cuando ejecutes el código, verás la siguiente salida:

Unsigned String value: 3000000000

Manejo de valores long negativos

En Java, los tipos de datos long también pueden almacenar valores negativos. En este paso, veremos qué pasa cuando intentamos convertir un valor negativo en una cadena decimal sin signo.

long longNegative = -123456789L;
String unsignedString = Long.toUnsignedString(longNegative);

Imprimiendo el resultado para el valor long negativo

Ahora que tenemos el valor de la cadena decimal sin signo, intentaremos imprimirlo en la consola utilizando el método System.out.println().

System.out.println("Unsigned Decimal String value: " + unsignedString);

A continuación, se muestra el 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);
    }
}

La salida se verá así:

Unsigned Decimal String value: 18446743950276013727

Conversión de un valor long definido por el usuario

En este paso, crearemos un valor long definido por el usuario y lo convertiremos en una cadena decimal sin signo utilizando el método toUnsignedString().

Para hacer eso, crearemos un objeto Scanner para leer desde la consola y luego almacenaremos el valor escaneado en una variable long.

Scanner scanner = new Scanner(System.in);
System.out.print("Enter a number: ");
long userLong = scanner.nextLong();

Luego, convertiremos el valor long definido por el usuario en una cadena decimal sin signo utilizando el método toUnsignedString().

String unsignedString = Long.toUnsignedString(userLong);

Finalmente, imprimiremos el valor convertido en la consola.

System.out.println("Unsigned String value: " + unsignedString);

A continuación, se muestra el 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);
    }
}

Cuando ejecutes el código, se te pedirá que ingreses un número en la consola. Después de ingresar un valor, el programa lo convertirá en un valor de cadena decimal sin signo y lo imprimirá en la consola.

Manejo de entradas no válidas

En este paso, modificaremos el código del paso anterior para manejar entradas de usuario no válidas.

Primero, envolveremos el código del paso 6 en un bloque try-catch para manejar cualquier excepción que pueda ocurrir debido a una entrada de usuario no válida.

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.");
}

El bloque try contiene el mismo código del paso 6 para leer la entrada del usuario, convertirla en una cadena decimal sin signo e imprimirla en la consola.

El bloque catch captura cualquier InputMismatchException que pueda ocurrir debido a una entrada de usuario no válida e imprime un mensaje de error en la consola indicando que la entrada no era un valor long válido.

A continuación, se muestra el 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.");
        }
    }
}

Cuando ejecutes el código y desees ingresar una entrada no válida, el programa imprimirá un mensaje de error en la consola. Si ingresas un valor long válido, el programa lo convertirá en un valor de cadena decimal sin signo e imprimirá en la consola.

Resumen

En este laboratorio, aprendiste sobre el método toUnsignedString() de Java que se utiliza para convertir un tipo de datos long en una cadena decimal sin signo. También aprendiste con ejemplos cómo usar este método, qué toma como argumento y qué devuelve.

Aprendiste cómo manejar la entrada no válida para valores long definidos por el usuario, y cómo manejar valores long negativos e imprimirlos en la consola en su representación de cadena decimal sin signo.