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