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 strings that represent names 11 String singer = "Holiday, Billie"; 12 String sculptor = "Claudel, Camille"; 13 String painter = "Piscasso, Pablo"; 14 String dancer = "Zotto, Osvaldo"; 15 String self = "Maldonado, Gregory"; 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 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 32 System.out.println("\nName lengths ..."); 33 System.out.println(singerLength); 34 System.out.println(sculptorLength); 35 System.out.println(painterLength); 36 System.out.println(dancerLength); 37 System.out.println(selfLength); 38 39 //POINT C: Compute and print the location of the comma within each string, no labels 40 41 int singerCommaPosition = singer.indexOf(","); 42 int sculptorCommaPosition = sculptor.indexOf(","); 43 int painterCommaPosition = painter.indexOf(","); 44 int dancerCommaPosition = dancer.indexOf(","); 45 int selfCommaPosition = self.indexOf(","); 46 47 System.out.println("\nComma postions ..."); 48 System.out.println(singerCommaPosition); 49 System.out.println(sculptorCommaPosition); 50 System.out.println(painterCommaPosition); 51 System.out.println(dancerCommaPosition); 52 System.out.println(selfCommaPosition); 53 54 //POINT D: Compute and print the five first name, with no labels 55 56 String singerFirst = singer.substring(singerCommaPosition + 2); 57 String sculptorFirst = sculptor.substring(sculptorCommaPosition + 2); 58 String painterFirst = painter.substring(painterCommaPosition + 2); 59 String dancerFirst = dancer.substring(dancerCommaPosition + 2); 60 String selfFirst = self.substring(selfCommaPosition + 2); 61 62 System.out.println("\nFirst names ..."); 63 System.out.println(singerFirst); 64 System.out.println(sculptorFirst); 65 System.out.println(painterFirst); 66 System.out.println(dancerFirst); 67 System.out.println(selfFirst); 68 69 //POINT E: Compute and print the five last names, with no labels 70 71 String singerLast = singer.substring(0, singerCommaPosition); 72 String sculptorLast = sculptor.substring(0, sculptorCommaPosition); 73 String painterLast = painter.substring(0, painterCommaPosition); 74 String dancerLast = dancer.substring(0, dancerCommaPosition); 75 String selfLast = self.substring(0, selfCommaPosition); 76 77 System.out.println("\nLast names ..."); 78 System.out.println(singerLast); 79 System.out.println(sculptorLast); 80 System.out.println(painterLast); 81 System.out.println(dancerLast); 82 System.out.println(selfLast); 83 84 //POINT F: Compute and print the first names, again 85 86 System.out.println("\nFirst names, once again ..."); 87 System.out.println(firstName(singer)); 88 System.out.println(firstName(sculptor)); 89 System.out.println(firstName(painter)); 90 System.out.println(firstName(dancer)); 91 System.out.println(firstName(self)); 92 93 //POINT G: Compute and print the last names, again 94 95 96 System.out.println("\nLast names, once again ..."); 97 System.out.println(lastName(singer)); 98 System.out.println(lastName(sculptor)); 99 System.out.println(lastName(painter)); 100 System.out.println(lastName(dancer)); 101 System.out.println(lastName(self)); 102 103 //POINT H: Compute and print the full names, natural style 104 System.out.println("\nFull names, natural style ..."); 105 System.out.println(fullName(singer)); 106 System.out.println(fullName(sculptor)); 107 System.out.println(fullName(painter)); 108 System.out.println(fullName(dancer)); 109 System.out.println(fullName(self)); 110 } 111 112 private static String fullName(String directoryStyleName) { 113 114 return firstName(directoryStyleName) + " " + lastName(directoryStyleName); 115 } 116 117 private static String lastName(String directoryStyleName) { 118 119 int index = directoryStyleName.indexOf(","); 120 String lastName = directoryStyleName.substring(0, index); 121 122 return lastName; 123 } 124 125 private static String firstName(String directoryStyleName) { 126 127 int index = directoryStyleName.indexOf(","); 128 String firstName = directoryStyleName.substring(index + 2); 129 130 return firstName; 131 } 132 133 } 134