Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Java

Clase de escáner Java

Clase de escáner Java

En este tutorial, aprenderemos sobre Java Scanner y sus métodos con la ayuda de ejemplos.

El Scanner clase de los java.util El paquete se usa para leer datos de entrada de diferentes fuentes, como flujos de entrada, usuarios, archivos, etc. Tomemos un ejemplo.


Ejemplo 1:leer una línea de texto usando un escáner

import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    // creates an object of Scanner
    Scanner input = new Scanner(System.in);

    System.out.print("Enter your name: ");

    // takes input from the keyboard
    String name = input.nextLine();

    // prints the name
    System.out.println("My name is " + name);

    // closes the scanner
    input.close();
  }
}

Salida

Enter your name: Kelvin
My name is Kelvin

En el ejemplo anterior, observe la línea

Scanner input = new Scanner(System.in);

Aquí, hemos creado un objeto de Scanner llamado entrada .

El System.in El parámetro se utiliza para tomar la entrada de la entrada estándar. Funciona igual que tomar entradas desde el teclado.

Entonces hemos usado el nextLine() método del Scanner class para leer una línea de texto del usuario.

Ahora que tienes una idea sobre Scanner , exploremos más al respecto.


Importar clase de escáner

Como podemos ver en el ejemplo anterior, necesitamos importar el java.util.Scanner paquete antes de que podamos usar el Scanner clase.

import java.util.Scanner;

Para obtener más información sobre la importación de paquetes, visite Paquetes Java.


Crear un objeto de escáner en Java

Una vez que importamos el paquete, así es como podemos crear Scanner objetos.

// read input from the input stream
Scanner sc1 = new Scanner(InputStream input);

// read input from files
Scanner sc2 = new Scanner(File file);

// read input from a string
Scanner sc3 = new Scanner(String str);

Aquí, hemos creado objetos del Scanner clase que leerá la entrada de InputStream, File y String respectivamente.


Métodos de escáner de Java para tomar entrada

El Scanner class proporciona varios métodos que nos permiten leer entradas de diferentes tipos.

Método Descripción
nextInt() lee un int valor del usuario
nextFloat() lee un float valor del usuario
nextBoolean() lee un boolean valor del usuario
nextLine() lee una línea de texto del usuario
next() lee una palabra del usuario
nextByte() lee un byte valor del usuario
nextDouble() lee un doubl e valor del usuario
nextShort() lee un short valor del usuario
nextLong() lee un long valor del usuario

Ejemplo 2:Escáner Java nextInt()

import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    // creates a Scanner object
    Scanner input = new Scanner(System.in);

    System.out.println("Enter an integer: ");

    // reads an int value
    int data1 = input.nextInt();

    System.out.println("Using nextInt(): " + data1);

    input.close();
  }
}

Salida

Enter an integer:
22
Using nextInt(): 22

En el ejemplo anterior, hemos utilizado el nextInt() método para leer un valor entero.


Ejemplo 3:Escáner Java nextDouble()

import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    // creates an object of Scanner
    Scanner input = new Scanner(System.in);
    System.out.print("Enter Double value: ");

    // reads the double value
    double value = input.nextDouble();
    System.out.println("Using nextDouble(): " + value);

    input.close();
  }
}

Salida

Enter Double value: 33.33
Using nextDouble(): 33.33

En el ejemplo anterior, hemos utilizado el nextDouble() método para leer un valor de coma flotante.


Ejemplo 4:Analizador de Java next()

import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    // creates an object of Scanner
    Scanner input = new Scanner(System.in);
    System.out.print("Enter your name: ");

    // reads the entire word
    String value = input.next();
    System.out.println("Using next(): " + value);

    input.close();
  }
}

Salida

Enter your name: Jonny Walker
Using next(): Jonny

En el ejemplo anterior, hemos utilizado el next() método para leer una cadena del usuario.

Aquí, hemos proporcionado el nombre completo. Sin embargo, el next() El método solo lee el primer nombre.

Esto se debe a que el next() El método lee la entrada hasta el espacio en blanco personaje. Una vez que el espacio en blanco se encuentra, devuelve la cadena (excluyendo el espacio en blanco).


Ejemplo 5:Escáner Java nextLine()

import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    // creates an object of Scanner
    Scanner input = new Scanner(System.in);
    System.out.print("Enter your name: ");

    // reads the entire line
    String value = input.nextLine();
    System.out.println("Using nextLine(): " + value);

    input.close();
  }
}

Salida

Enter your name: Jonny Walker
Using nextLine(): Jonny Walker

En el primer ejemplo, hemos utilizado el nextLine() método para leer una cadena del usuario.

A diferencia de next() , el nextLine() El método lee toda la línea de entrada, incluidos los espacios. El método finaliza cuando encuentra un carácter de línea siguiente, \n .

Lectura recomendada: Escáner de Java omitiendo nextLine().


Escáner Java con BigInteger y BigDecimal

El escáner de Java también se puede usar para leer números enteros y decimales grandes.


Ejemplo 4:Leer BigInteger y BigDecimal

import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Scanner;

class Main {
  public static void main(String[] args) {

    // creates an object of Scanner
    Scanner input = new Scanner(System.in);
    System.out.print("Enter a big integer: ");

    // reads the big integer
    BigInteger value1 = input.nextBigInteger();
    System.out.println("Using nextBigInteger(): " + value1);

    System.out.print("Enter a big decimal: ");

    // reads the big decimal
    BigDecimal value2 = input.nextBigDecimal();
    System.out.println("Using nextBigDecimal(): " + value2);

    input.close();
  }
}

Salida

Enter a big integer: 987654321
Using nextBigInteger(): 987654321
Enter a big decimal: 9.55555
Using nextBigDecimal(): 9.55555

En el ejemplo anterior, hemos utilizado el java.math.BigInteger y java.math.BigDecimal paquete para leer BigInteger y BigDecimal respectivamente.


Funcionamiento de Java Scanner

El Scanner class lee una línea completa y divide la línea en tokens. Los tokens son pequeños elementos que tienen algún significado para el compilador de Java. Por ejemplo,

Supongamos que hay una cadena de entrada:

He is 22

En este caso, el objeto del escáner leerá la línea completa y dividirá la cadena en tokens:"Él ", "es " y "22 ". Luego, el objeto itera sobre cada token y lee cada token usando sus diferentes métodos.

Nota :De forma predeterminada, se utilizan espacios en blanco para dividir tokens.


Java

  1. Palabra clave final de Java
  2. Operador de instancia de Java
  3. Herencia de Java
  4. Clase estática anidada de Java
  5. Clase anónima de Java
  6. Clase única de Java
  7. Reflexión Java
  8. Clase Java ObjectOutputStream
  9. Clase de escáner Java
  10. Genéricos de Java
  11. Clase de archivo Java