Maison  >  Article  >  Java  >  Comment laisser Java récupérer la chaîne saisie par l'utilisateur

Comment laisser Java récupérer la chaîne saisie par l'utilisateur

王林
王林original
2019-12-06 14:54:107159parcourir

Comment laisser Java récupérer la chaîne saisie par l'utilisateur

C'est une opération très courante pour saisir dynamiquement des données à partir de la console, effectuer divers traitements sur les données, puis sortir les données. Maintenant une introduction systématique à la méthode de saisie de données :

Call of Scanner class

Méthodes associées :

hasNext() Déterminez s'il existe le segment suivant après la position de numérisation actuelle dans le scanner.

hasNextLine()Renvoie vrai s'il y a une autre ligne dans l'entrée de ce scanner.

next()Trouvez et renvoyez le prochain jeton complet de ce scanner.

nextLine()Ce scanner exécute la ligne actuelle et renvoie les informations d'entrée ignorées.

nextInt()Renvoyer les données de mise en forme numérisées par la console.

Partage de didacticiels vidéo associés : Vidéo d'apprentissage Java

Exemple de code :

package FIRST_Chapter;
import java.util.Scanner;
public class TestScanner { 
        public static void main(String[] args) { 
                Scanner s = new Scanner(System.in); 
                System.out.println("请输入字符串:"); 
                while (true) { 
                        String line = s.nextLine(); 
                        if (line.equals("ok")) break; 
                        System.out.println(">>>" + line); 
                } 
        } 
}

Démonstration du résultat :

Comment laisser Java récupérer la chaîne saisie par lutilisateur

La différence entre les méthodes next() et nextLine()

La méthode next() doit lire les caractères valides avant de pouvoir terminer la saisie. La méthode next() supprimera automatiquement les terminateurs précédemment rencontrés tels que la barre d'espace, la touche Tab ou la touche Entrée. Ce n'est qu'après avoir entré un caractère valide que la méthode next() supprimera la barre d'espace, la touche Tab ou la touche Entrée saisie par la suite. Les clés, etc. sont traitées comme des délimiteurs ou des terminateurs.

En termes simples, next() trouve et renvoie le prochain jeton complet de ce scanner. La balise complète est précédée et suivie d'informations d'entrée qui correspondent au modèle délimité, de sorte que la méthode suivante ne peut pas obtenir une chaîne avec des espaces.

Le caractère de fin de la méthode nextLine() est simplement la touche Entrée, c'est-à-dire que la méthode nextLine() renvoie tous les caractères avant la touche Entrée et peut obtenir une chaîne avec des espaces.

Par exemple, le programme suivant :

package FIRST_Chapter;

import java.util.Scanner;

class test{
    public static void main(String[] Args){

        Scanner sc= new Scanner(System.in);
        System.out.println("请输入一段数据");
        String str =sc.next();
        System.out.println("用next输入的语句"+str);
        String str1 =sc.nextLine();
        System.out.println("用nextLine输入的语句"+str1);
        //sc.nextLine();//如果下面注释行想用nextLine的话,就要注意加上这句话

    }
}

Résultat de sortie :

Comment laisser Java récupérer la chaîne saisie par lutilisateur

Modifier la sortie du résultat :

Comment laisser Java récupérer la chaîne saisie par lutilisateur

Résumé : Next rencontre un espace et termine la saisie même si elle coupe une nouvelle ligne. NextLine terminera uniquement la saisie par un saut de ligne (retour chariot).

Le deuxième résultat montre que lorsque vous entrez le retour chariot pour indiquer la fin de la saisie, la ligne de code suivante nextLine termine également la saisie à ce moment-là. Le résultat de l'entrée est vide, juste un retour chariot.

Articles et tutoriels connexes recommandés : Tutoriel d'introduction à Java

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