2017-10-13 8 views
0

J'ai du mal à obtenir le reste de mon code pour avoir les limites suivantesLimitation de l'entrée utilisateur seulement « R », « L », et 0-9

  1. Il se compose de seulement les caractères suivants: ' R », « L », et « 0 » à « caractère 9 »
  2. Le « R » caractère doivent apparaître exactement deux fois
  3. Le « L » caractère doit apparaître exactement une fois
  4. Le « L » doit apparaître entre les deux caractères «R»
  5. Chaque «R» et « L » caractère doit être suivi d'au moins un « 0 » à « 9 » caractère
  6. Pas plus de deux « 0 » à « 9 » peut apparaître consécutivement

    import java.util.Scanner; 
    
    public class HW04 
    { 
    
    public static void main(String[] args) 
    { 
    Scanner stdIn = new Scanner(System.in); 
    // Started by naming all the variables 
    String combination; 
    // 
    char R, L; 
    int length; 
    boolean big_R, big_L;  
    System.out.print("Please enter a valid turn dial lock combination : "); 
    combination = stdIn.nextLine(); 
    System.out.println(""); 
    System.out.println(""); 
    length = combination.length(); 
    
    if (length <= 9 && length >= 6) 
    { 
        R = combination.charAt(0); 
        if (R == 'R') 
         big_R = true; 
        else 
         System.out.println(combination + " is not a valid turn dial lock 
        combination"); 
        if 
        } 
    else 
    { 
        System.out.println(combination + " is not a valid turn dial lock 
    combination"); 
    } 
    stdIn.close(); 
    } 
    
    } 
    

Répondre

0

donné Votre liste d'exigences doit être validée par une expression régulière.

peut-être quelque chose comme R\d\d?L\d\d?R\d\d?

qui se lit comme: un R suivi par 1 chiffre et un deuxième chiffre en option un L suivi par 1 chiffre et un deuxième chiffre en option et enfin un second R suivi par 1 chiffre et un deuxième chiffre facultatif

vous pouvez trouver ailleurs des exemples de la façon d'appliquer cela à votre code.