Maison >Java >javaDidacticiel >Pourquoi System.console() renvoie-t-il Null et quelles sont les alternatives pour l'entrée Java ?

Pourquoi System.console() renvoie-t-il Null et quelles sont les alternatives pour l'entrée Java ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-18 11:02:19619parcourir

Why Does System.console() Return Null, and What Are the Alternatives for Java Input?

Entrée Java de System.console()

Lors de l'utilisation de la classe Console, vous pouvez rencontrer un objet nul lors de l'appel de System.console( ). Avant de continuer, il est crucial de déterminer si des ajustements sont nécessaires.

System.console() dans différents environnements

L'utilisation de System.console() pour obtenir des entrées a des caractéristiques spécifiques limitations :

  • IDE Environnements :

    • System.console() renvoie null dans les IDE comme Eclipse ou IntelliJ car ils fournissent leurs propres mécanismes de saisie utilisateur.
  • Environnements de ligne de commande :

    • Fonctions System.console() comme prévu lorsqu'il est exécuté directement à partir de la ligne de commande.

Solutions alternatives

Si System.console() n'est pas une option, envisagez les alternatives suivantes :

  • Entrée tampon (Non-IDE) :
System.out.print("Enter something:");
String input = System.console().readLine();
  • BufferedReader (IDE et ligne de commande) :
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Test {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        System.out.print("Enter String");
        String s = br.readLine();
    }
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn