Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

184
Vistas
Comportamiento inesperado de Scanner

En el código a continuación, tiene dos métodos, escáner1 y escáner2, en ambos métodos se crea un nuevo objeto de Escáner y se escanea la entrada después de cerrar el Escáner invocando close().

 import java.util.Scanner; public class TestScanner { public static void scanner1(){ Scanner sc = new Scanner(System.in);//created object of scanner System.out.println("Enter string :"); String input = sc.nextLine(); //scanning input sc.close(); //closing scanner object } public static void scanner2(){//problem in scanner2 Scanner sc = new Scanner(System.in);//created another scanner object System.out.println("Enter String :"); String input = sc.nextLine();//scanning object sc.close();//closing the input } public static void main(String[] args) { scanner1(); scanner2();//problem here } }

Para el método del escáner 1, funciona bien, pero cuando se invoca el método del escáner 2, aparece el siguiente error:

Ingrese la cadena: excepción de India en el hilo "principal"

java.util.NoSuchElementException: No se encontró ninguna línea Introduzca la cadena: en java.util.Scanner.nextLine(Fuente desconocida) en cheggapril.TestScanner.scanner2(TestScanner.java:17) en cheggapril.TestScanner.main(TestScanner.java:24)

El problema es por qué en el método scanner2 el escáner no puede escanear la entrada del usuario incluso en este método creando un nuevo objeto de Scanner. Por favor, dé una explicación clara. cualquier referencia o ejemplo será muy agradecido.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

La razón es bastante simple, al cerrar el primer objeto del escáner también se cierra internamente el flujo de entrada que en realidad está siendo utilizado por el segundo escáner.

sus opciones son: use solo un escáner o ciérrelos cuando esté seguro de que ya no se necesitan todos.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda