La methode scanner

jo-concept -  
 @urels -
Bonjour,

s'il vous plait commenter moi chacune des ligne ci-dessou avec beaucoup de detail surtout les lignes devant les quelles j'ai mis le caractere "@" c'est un peu flou.merci

Scanner sc = new Scanner(System.in);
int i = sc.nextInt();

Scanner sc = new Scanner(new File("myNumbers"));
@ while (sc.hasNextLong()) {
long aLong = sc.nextLong();
}

String input = "1 fish 2 fish red fish blue fish";
@ Scanner s = new Scanner(input).useDelimiter("\\s*fish\\s*");
System.out.println(s.nextInt());
System.out.println(s.nextInt());
System.out.println(s.next());
System.out.println(s.next());
s.close();

String input = "1 fish 2 fish red fish blue fish";
Scanner s = new Scanner(input);
@ s.findInLine("(\\d+) fish (\\d+) fish (\\w+) fish (\\w+)");
@ MatchResult result = s.match();
@ for (int i=1; i<=result.groupCount(); i++)
System.out.println(result.group(i));
s.close();

A voir également:

2 réponses

KX Messages postés 19031 Statut Modérateur 3 020
 
Regarde la documentation : TOUT est expliqué !!!
hasNextLong, useDelimiter, findInLine, match, groupCount et group
0
@urels
 
VOila ;) :

// creation d'un scanner qui recupère les données saisies dans la console
Scanner sc = new Scanner(System.in);
// recupération du premier nombre saisi (int -> Integer)
int i = sc.nextInt();
// scanner va maintenan lire le fichier myNumbers
Scanner sc = new Scanner(new File("myNumbers"));
// tant qu'il y a des nombres de type Long, la variable aLong prend la valeur du
// dernier chiffre
while (sc.hasNextLong()) {
long aLong = sc.nextLong();
}
// initialisation du chaine de caractères input
String input = "1 fish 2 fish red fish blue fish";
// scanner qui lit la chaine input avec comme délimiteur avec une expr. régul. *
Scanner s = new Scanner(input).useDelimiter("\\s*fish\\s*");
// on prend le premier Integer
System.out.println(s.nextInt());
// on prend le deuxième Integer
System.out.println(s.nextInt());
// on prend le 'mot' suivant
System.out.println(s.next());
// on prend le 'mot' suivant
System.out.println(s.next());
// on ferme le scanner
s.close();
// nouvelle chaine input
String input = "1 fish 2 fish red fish blue fish";
// on lit cette chaine
Scanner s = new Scanner(input);
// on recherche l'expr. régul. dans la ligne
s.findInLine("(\\d+) fish (\\d+) fish (\\w+) fish (\\w+)");
// retourne le résultat de l'opération précédente dans result
MatchResult result = s.match();
// on affiche le résultat en parcourant le result
for (int i=1; i<=result.groupCount(); i++)
System.out.println(result.group(i));
// on ferme le scanner
s.close();

* voir l'adresse pour les expressions régulières :
http://benhur.teluq.uqam.ca/...
0