1 /** This program will do a bit of character string processing.*/ 2 3 package stringthing; 4 5 public class StringThing { 6 public static void main(String[] args) { 7 // POINT A: CREATE A PRINT SOME STRINGS THAT REPRESENT NAMES 8 String singer = "Holiday, Billie"; 9 String sculptor = "Claudel, Camille"; 10 String painter = "Pacasso, Pablo"; 11 String dancer = "Zotto, Oswaldo"; 12 String self = "Siddon, Jordan"; 13 System.out.println("\nNames ... "); 14 System.out.println("One famous singer is " + singer); 15 System.out.println("One famous sculptor is " + sculptor); 16 System.out.println("One famous painter is " + painter); 17 System.out.println("One famous dancer is " + dancer); 18 System.out.println("One famous person is " + self); 19 20 // POINT B: COMPUTE AND PRINT THE LENGTHS OF THE STRINGS, WITHOUT LABELS 21 int singerLength = singer.length(); 22 int sculptorLength = sculptor.length(); 23 int painterLength = painter.length(); 24 int dancerLength = dancer.length(); 25 int selfLength = self.length(); 26 System.out.println("\nName Length"); 27 System.out.println(singer + " name length is " + singerLength); 28 System.out.println(sculptor + " name length is " + sculptorLength); 29 System.out.println(painter + " name length is " + painterLength); 30 System.out.println(dancer + " name length is " + dancerLength); 31 System.out.println(self + " name length is " + selfLength); 32 33 // POINT C: COMPUTE AND PRINT THE LOCATION OF THE COMMA WITHIN EACH STRING, NO LABELS 34 int singerCommaPosition = singer.indexOf(","); 35 int sculptorCommaPosition = sculptor.indexOf(","); 36 int painterCommaPostion = painter.indexOf(","); 37 int dancerCommaPosition = dancer.indexOf(","); 38 int selfCommaPosition = self.indexOf(","); 39 System.out.println("\nComma positions ..."); 40 System.out.println("singerCommaPosition = " + singerCommaPosition); 41 System.out.println("sculptorCommaPosition = " + sculptorCommaPosition); 42 System.out.println("painterCommaPostition = " + painterCommaPostion); 43 System.out.println("dancerCommaPosition = " + dancerCommaPosition); 44 System.out.println("selfCommaPostition = " + selfCommaPosition); 45 46 47 // POINT D: COMPUTE AND PRINT THE FIVE FIRST NAMES, WITH NO LABELS 48 String singerFirst = singer.substring(singerCommaPosition + 2); 49 String sculptorFirst = sculptor.substring(sculptorCommaPosition + 2); 50 String painterFirst = painter.substring(painterCommaPostion + 2); 51 String dancerFirst = dancer.substring(dancerCommaPosition + 2); 52 String selfFirst = self.substring(selfCommaPosition + 2); 53 System.out.println("\nFirst Names ..."); 54 System.out.println("Singer First Name is " + singerFirst); 55 System.out.println("Sculptor First Name is " + sculptorFirst); 56 System.out.println("Painter First Name is " + painterFirst); 57 System.out.println("Dancer First Name is " + dancerFirst); 58 System.out.println("Self First Name is " + selfFirst); 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, painterCommaPostion); 65 String dancerLast = dancer.substring(0, dancerCommaPosition); 66 String selfLast = self.substring(0, selfCommaPosition); 67 System.out.println("\nLast names ... "); 68 System.out.println("Singer Last Name is " + singerLast); 69 System.out.println("Sculptor Last Name is " + sculptorLast); 70 System.out.println("Painter Last Name is " + painterLast); 71 System.out.println("Dancer Last Name is " + dancerLast); 72 System.out.println("Self Last Name is " + selfLast); 73 74 75 // POINT F: COMPUTE AND PRINT THE FIRST NAMES, AGAIN 76 System.out.println("\nFirst names, once again ..."); 77 System.out.println(firstName(singer)); 78 System.out.println(firstName(sculptor)); 79 System.out.println(firstName(painter)); 80 System.out.println(firstName(dancer)); 81 System.out.println(firstName(self)); 82 83 // POINT G: COMPUTE AND PRINT LAST NAMES, AGAIN 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 private static String firstName(String directoryStyleName) { 101 int positionOfComma = directoryStyleName.indexOf(","); 102 String first = directoryStyleName.substring(positionOfComma + 2); 103 return first; 104 } 105 106 private static String lastName(String directoryStyleName) { 107 int positionOfComma = directoryStyleName.indexOf(","); 108 String last = directoryStyleName.substring(0, positionOfComma); 109 return last; 110 } 111 112 private static String fullName(String directoryStyleName) { 113 String full = firstName(directoryStyleName) + " " + lastName(directoryStyleName); 114 return full; 115 } 116 117 }