Les conditions pour un mot de passe.
Aruixe
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour à tous !
Je suis nouveau dans le domaine de la programmation et ai un projet à remplir (qui est censé être basique pour ainsi développer mon esprit de logique). Concrètement, le projet me demande de laisser l'utilisateur entrer un mot de passe, celui-ci devant répondre à des conditions. J'en ai sélectionné deux : 2 majuscules minimum et 6 caractères au minimum. Jusqu'ici j'ai eu des idées et j'ai commencé à construire mon programme que voici :
Vous avez dû remarquer que je n'ai qu'une seule condition de présente, celle des 6 caractères. En effet je ne trouve pas comment définir un minimum de majuscules dans le mot de passe demandé. J'ai utilisé "int characterCount = str.codePointCount(0, charCount);" pour le nombre de caractères mais n'ai pas d'équivalence pour les majuscules.
Je vous demande donc votre aide ! Merci d'avance. Si je n'ai pas été assez précis n'hésitez pas à me demander plus d'informations.
Je suis nouveau dans le domaine de la programmation et ai un projet à remplir (qui est censé être basique pour ainsi développer mon esprit de logique). Concrètement, le projet me demande de laisser l'utilisateur entrer un mot de passe, celui-ci devant répondre à des conditions. J'en ai sélectionné deux : 2 majuscules minimum et 6 caractères au minimum. Jusqu'ici j'ai eu des idées et j'ai commencé à construire mon programme que voici :
import java.util.Scanner;
public class Hello {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
System.out.println("Veuillez definir votre mot de passe, celui-ci doit contenir un minimum de 6 caracteres :");
String str = sc.nextLine(); // Permet l'entrée du mot de passe
int charCount = str.length();
int characterCount = str.codePointCount(0, charCount); // Variable nombre de caractères
if(characterCount >= 6)
{
System.out.println("Mot de passe valide.");
}
else
{
System.out.println("Mot de passe invalide; il doit contenir un minimum de 6 caracteres.");
}
}
}
Vous avez dû remarquer que je n'ai qu'une seule condition de présente, celle des 6 caractères. En effet je ne trouve pas comment définir un minimum de majuscules dans le mot de passe demandé. J'ai utilisé "int characterCount = str.codePointCount(0, charCount);" pour le nombre de caractères mais n'ai pas d'équivalence pour les majuscules.
Je vous demande donc votre aide ! Merci d'avance. Si je n'ai pas été assez précis n'hésitez pas à me demander plus d'informations.
A voir également:
- Les conditions pour un mot de passe.
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
- Mot de passe bios perdu - Guide
- Voir mot de passe wifi android - Guide
1 réponse
Tu peux te servir des méthodes de la classe Character qui permettent de savoir pour un caractère les différentes propriétés qui le caractérise.
Exemple :
Quand on connaît cette classe là, ton problème devient très simple ;-)
Exemple :
char ch = '?';
boolean digit = Character.isDigit(ch);
boolean letter= Character.isLetter(ch);
boolean lower = Character.isLowerCase(ch);
boolean upper = Character.isUpperCase(ch);
...
Quand on connaît cette classe là, ton problème devient très simple ;-)