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