title: Find next character in a string?
body: <p>I have a java programming assignment where you have to input a date on a single line and it gives you a numerology (horoscope-like) report based on the date. It is assumed that the user will enter a formatted date, separated with spaces. </p>
  
  <p>I can retrieve the month, day, and year of the input by using in.nextInt(). However, I also have to check that the user used a correct separating character for each part of the date, which means I just have to check whether the user used forward slashes.</p>
  
  <p>When looking at my code below, I currently use charAt() to find the separating characters. The problem is that the date won't always be 14 characters long. So a date in the form of 10 / 17 / 2004 is 14 characters long, but a date of 4 / 7 / 1992 is only 12 characters long, meaning that "slash1" won't always be in.charAt(3), in the latter situation it would be in.charAt(2).</p>
  
  <p>Does java have a method that allows something like in.nextChar()? I know that it doesn't, but how could I just find a next character in the date?</p>
  
  <p><strong>EDIT: I forgot to reflect this originally, but my professor said that we are NOT allowed to use the String.split() method, for some reason. The thing is, I get the month, day, and year perfectly fine. I just need to check that the person used a forward slash to separate the date. If a dash is entered, the date is invalid.</strong> </p>
  
  <pre><code>public void getDate()
  {
      char slash1, slash2;
  
      do
      {
          System.out.print("Please enter your birth date (mm / dd / yyyy): ");
          Scanner in = new Scanner(System.in);
          String date = in.nextLine();
  
          month = in.nextInt();
          day = in.nextInt();
          year = in.nextInt();
  
          slash1 = date.charAt(3);
          slash2 = date.charAt(8);
      } while (validDate(slash1, slash2) == false);
  
      calcNum();
  }
  </code></pre>