/home/kchan2/NetBeansProjects/CS1/src/stringthing/StringThing.java
  1 /*
  2  * This program will do a bit of character string processing.
  3  */
  4 package stringthing;
  5 
  6 /**
  7  *
  8  * @author kchan2
  9  */
 10 public class StringThing {
 11 
 12     /**
 13      * @param args the command line arguments
 14      */
 15     public static void main(String[] args) {
 16         // POINT A: CREATE A PRINT SOME STRING THST REPRESENT NAMES
 17         String singer = "Holiday, Billie";
 18         String sculptor = "Claudel, Camille";
 19         String painter = "Picasso, Pablo";
 20         String dancer = "Zotto, Osvaldo";
 21         String self = "Chan, Ka Ying";
 22         System.out.println("\nNames...");
 23         System.out.println(singer);
 24         System.out.println(sculptor);
 25         System.out.println(painter);
 26         System.out.println(dancer);
 27         System.out.println(self);
 28         
 29         //POINT B: COMPUTE AND PRINT THE LENGTHS OF THE STRINGS, WITHOUT LABELS
 30         int singerLength = singer.length();
 31         int sculptorLength = sculptor.length();
 32         int painterLength = painter.length();
 33         int dancerLength = dancer.length();
 34         int selfLength = self.length();
 35         System.out.println("\nName lengths...");
 36         System.out.println(singerLength);
 37         System.out.println(sculptorLength);
 38         System.out.println(painterLength);
 39         System.out.println(dancerLength);
 40         System.out.println(selfLength);
 41         
 42         //POINT C: COPMUTE AND PRINT THE LOCATION OF THE COMMA WITHIN EACH STRING, NO LABELS
 43         int singerCommaPosition = singer.indexOf(",");
 44         int sculptorCommaPosition = sculptor.indexOf(",");
 45         int painterCommaPosition = painter.indexOf(",");
 46         int dancerCommaPosition = dancer.indexOf(",");
 47         int selfCommaPosition = self.indexOf(",");
 48         System.out.println("\nComma positions...");
 49         System.out.println(singerCommaPosition);
 50         System.out.println(sculptorCommaPosition);
 51         System.out.println(painterCommaPosition);
 52         System.out.println(dancerCommaPosition);
 53         System.out.println(selfCommaPosition);
 54         
 55         // POINT D: COMPUTE AND PRINT THE FIVE FIRST NAMES, WITH NO LABELS
 56         String singerFirst = singer.substring(singerCommaPosition+2);
 57         String sculptorFirst = sculptor.substring(sculptorCommaPosition+2);
 58         String paintererFirst = painter.substring(painterCommaPosition+2);
 59         String dancerFirst = dancer.substring(dancerCommaPosition+2);
 60         String selfFirst = self.substring(selfCommaPosition+2);
 61         System.out.println("\nFirst names...");
 62         System.out.println(singerFirst);
 63         System.out.println(sculptorFirst);
 64         System.out.println(paintererFirst);
 65         System.out.println(dancerFirst);
 66         System.out.println(selfFirst);
 67         
 68         // POINT E: COMPUTE AND PRINT THE FIVE LAST NAMES, WITH NO LABELS
 69         String singerLast = singer.substring(0,singerCommaPosition);
 70         String sculptorLast = sculptor.substring(0,sculptorCommaPosition);
 71         String paintererLast = painter.substring(0,painterCommaPosition);
 72         String dancerLast = dancer.substring(0,dancerCommaPosition);
 73         String selfLast = self.substring(0,selfCommaPosition);
 74         System.out.println("\nLast names...");
 75         System.out.println(singerLast);
 76         System.out.println(sculptorLast);
 77         System.out.println(paintererLast);
 78         System.out.println(dancerLast);
 79         System.out.println(selfLast);
 80         
 81         //POINT F: COMPUTE AND PRINT THE FIRST NAMES, AGAIN
 82         System.out.println("\nFirst names, once again...");
 83         System.out.println(firstName(singer));
 84         System.out.println(firstName(sculptor));
 85         System.out.println(firstName(painter));
 86         System.out.println(firstName(dancer));
 87         System.out.println(firstName(self));
 88 
 89         // POINT G: COPMUTE AND PRINT THE LAST NAMES, AGAIN
 90         System.out.println("\nLast names, once again...");
 91         System.out.println(lastName(singer));
 92         System.out.println(lastName(sculptor));
 93         System.out.println(lastName(painter));
 94         System.out.println(lastName(dancer));
 95         System.out.println(lastName(self));
 96 
 97         // POINT H: COPMUTE AND PRINT THE FULL NAMES, NATURAL STYLE
 98         System.out.println("\nFull names, natural style...");
 99         System.out.println(fullName(singer));
100         System.out.println(fullName(sculptor));
101         System.out.println(fullName(painter));
102         System.out.println(fullName(dancer));
103         System.out.println(fullName(self));
104 
105     }
106 
107     private static String firstName(String directoryStyleName) {
108         int commaPosition = directoryStyleName.indexOf(",");
109         return directoryStyleName.substring(commaPosition+2);
110     }
111 
112     private static String lastName(String directoryStyleName) {
113         int commaPosition = directoryStyleName.indexOf(",");
114         return directoryStyleName.substring(0,commaPosition);
115     }
116 
117     private static String fullName(String dsn) {
118         String full = firstName(dsn) + " " + lastName(dsn);
119         return full;
120     }
121     
122 }
123