“Conocimiento Programación>Programación Java

¿Cómo se toma la entrada de doble valor en la programación Java?

2012/6/5
Hay varias formas de obtener la entrada de doble valor en la programación de Java, dependiendo de si está leyendo desde la consola o desde un archivo.

1. Usando `Scanner` (para entrada de consola):

Este es el método más común para obtener la entrada del usuario de la consola.

`` `Java

import java.util.scanner;

clase pública DoubleInput {

public static void main (string [] args) {

Scanner Scanner =New Scanner (System.in);

System.out.print ("Ingrese un valor doble:");

// usa nextDouble () para leer un doble

double doubleValue =scanner.nextDouble ();

System.out.println ("Entró:" + DoubleValue);

Scanner.close (); // IMPORTANTE:Cierre el escáner cuando termine

}

}

`` `` ``

Consideraciones importantes con `Scanner`:

* Manejo de errores: `nextDouble ()` lanza un `inputMismatchException` si el usuario entra en algo que no es un doble válido (por ejemplo, texto). Debe manejar esta excepción utilizando un bloque de 'try-catch` para evitar que su programa se bloquee:

`` `Java

import java.util.inputMisMatchException;

import java.util.scanner;

clase pública DoubleInputWithExceptionHandling {

public static void main (string [] args) {

Scanner Scanner =New Scanner (System.in);

System.out.print ("Ingrese un valor doble:");

doble valor doble;

intentar {

doubleValue =scanner.nextDouble ();

} Catch (InputMismatchException e) {

System.out.println ("Entrada no válida. Ingrese un doble válido");

Scanner.next (); // Consume la entrada no válida

devolver; // o manejar el error de otra manera

}

System.out.println ("Entró:" + DoubleValue);

Scanner.close ();

}

}

`` `` ``

* `scanner.next ()`: El `scanner.next ()` llamar dentro del bloque `captativo` es crucial. Si se produce un `inputMismatchException`, la entrada no válida permanece en el búfer de 'Scanner'. `scanner.next ()` consume esta entrada no válida, lo que permite que el programa solicite al usuario nuevamente sin quedarse atascado en un bucle infinito.

2. Usando `BufferedReader` (para entrada de consola o archivo):

`BufferedReader` es más eficiente para entradas grandes, pero requiere más análisis manual.

`` `Java

import java.io.bufferedReader;

import java.io.ioException;

import java.io.inputstreamreader;

clase pública DoubleInputBufferedReader {

public static void main (string [] args) {

BufferedReader lector =new BufferedReader (new InputStreamReader (System.in));

System.out.print ("Ingrese un valor doble:");

intentar {

String input =Reader.ReadLine ();

double doubleValue =double.parsedOuble (entrada);

System.out.println ("Entró:" + DoubleValue);

} Catch (ioException e) {

System.out.println ("Error de lectura de entrada:" + E.getMessage ());

} catch (numberFormateException e) {

System.out.println ("Entrada no válida. Ingrese un doble válido");

}

}

}

`` `` ``

Este método usa `double.parsedubouble ()` para convertir la entrada de cadena a un doble. También incluye el manejo de errores tanto para `ioexception` (error de entrada/salida) como` numberFormateException` (formato de número no válido).

3. Argumentos de línea de comandos:

Puede pasar un valor doble como argumento de línea de comandos al ejecutar su programa Java.

`` `Java

clase pública DoubleInputCommandline {

public static void main (string [] args) {

if (args.length> 0) {

intentar {

double doubleValue =double.parsedOuble (args [0]);

System.out.println ("Entró:" + DoubleValue);

} catch (numberFormateException e) {

System.out.println ("Entrada no válida. Proporcione un argumento de línea de comandos doble válido");

}

} demás {

System.out.println ("Proporcione un valor doble como argumento de línea de comandos");

}

}

}

`` `` ``

Recuerde compilar y ejecutar esto desde su terminal así:`Java DoubleInputCommandline 3.14159`

Elija el método que mejor se adapte a sus necesidades y recuerde incluir siempre un manejo de errores robusto para que su programa sea más resistente. El enfoque `Scanner` generalmente se prefiere por su simplicidad y capacidades de manejo de errores incorporados al tomar la entrada de la consola. `BufferedReader` ofrece un mejor rendimiento para archivos grandes. Los argumentos de línea de comandos son útiles para proporcionar información al ejecutar el programa desde el terminal.

Programación Java
Cómo dar formato a una barra de estado en Java RPG Juego
Cómo quitar ceros en recursividad Java
¿Cómo funcionan controladores en Android
Cómo escribir pruebas unitarias para un proyecto Java
¿Cómo escribo Java que seleccionará un archivo & Rename it
Cómo leer CLOBs en Java
Cómo instalar un archivo JAR en Eclipse
Cómo habilitar afirmaciones en Eclipse
Conocimiento de la computadora © http://www.ordenador.online