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