// ClassifyChar1.java
// Classifies the characters in a
// command-line argument of <= 15 characters,
// using methods of class Character.

public class ClassifyChar1  {
   public static void main(String[] args)
   {
      if ( args.length == 0 || args[0].length() > 15 )
      {
         System.out.println("This program classifies the "
                            + "characters in a single");
         System.out.println("command-line argument no more than "
                            + "15 characters long.");
         System.exit(0);
      }  // if user error

      System.out.println();
      System.out.println("Position   Character   Classification");
      System.out.println("--------   ---------   --------------");
      System.out.println();

      String text = args[0];

      for ( int i = 0; i < text.length(); i++ )  {

         // Display character's position in String text:
         String positionText = Integer.toString(i);
         for ( int j = positionText.length(); j < 2; j++ )
             positionText = " " + positionText;
         System.out.print("   " + positionText);

         // Display the character itself:
         char x = text.charAt(i);
         System.out.print("          " + x + "       ");

         // Classify the character:
         if ( Character.isDigit(x) )
            System.out.println("digit");
         else if ( Character.isUpperCase(x) )
            System.out.println("capital letter");
         else if ( Character.isLowerCase(x) )
            System.out.println("lower-case letter");
         else
            System.out.println("non-alphanumeric");
      }  // for i
   }  // method main
}  // class ClassifyChar1