1 /* 2 * This program will do a bit of character string processing. 3 */ 4 package stringthing; 5 6 public class StringThing { 7 public static void main(String[] args) { 8 //point A: create a print some strings that represent names 9 String singer = "Holiday, Billie"; 10 String sculptor = "Claudel, Camille"; 11 String painter = "Picasso, Pablo"; 12 String dancer = "Zotto, Osvaldo"; 13 String self = "Tracy, Isabelle"; 14 System.out.println("\nNames . . ."); 15 System.out.println(singer); 16 System.out.println(sculptor); 17 System.out.println(painter); 18 System.out.println(dancer); 19 System.out.println(self); 20 21 22 23 //point B: compute and print the lengths of the strings, without labels 24 int singerLength = singer.length(); 25 int sculptorLength = sculptor.length(); 26 int painterLength = painter.length(); 27 int dancerLength = dancer.length(); 28 int selfLength = self.length(); 29 System.out.println("\nName Lengths . . ."); 30 System.out.println(singerLength); 31 System.out.println(sculptorLength); 32 System.out.println(painterLength); 33 System.out.println(dancerLength); 34 System.out.println(selfLength); 35 36 37 //point C: compute and print the location of the comma within each string, no labels 38 int singerCommaPosition = singer.indexOf(","); 39 int sculporCommaPosition = sculptor.indexOf(","); 40 int painterCommaPosition = painter.indexOf(","); 41 int dancerCommaPosition = dancer.indexOf(","); 42 int selfCommaPosition = self.indexOf(","); 43 System.out.println("\nComma Positions . . ."); 44 System.out.println(singerCommaPosition); 45 System.out.println(sculporCommaPosition); 46 System.out.println(painterCommaPosition); 47 System.out.println(dancerCommaPosition); 48 System.out.println(selfCommaPosition); 49 50 51 //point D: compute and print the five first names, with no lables 52 String signerFirst = singer.substring(singerCommaPosition +2); 53 String sculptorFirst = sculptor.substring(sculporCommaPosition +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(signerFirst); 59 System.out.println(sculptorFirst); 60 System.out.println(painterFirst); 61 System.out.println(dancerFirst); 62 System.out.println(selfFirst); 63 64 65 //point E: compute and print the five last names, with no lables 66 String singerLast = singer.substring(0,singerCommaPosition); 67 String sculptorLast = sculptor.substring(0,sculporCommaPosition); 68 String painterLast = painter.substring(0,painterCommaPosition); 69 String dancerLast = dancer.substring(0,dancerCommaPosition); 70 String selfLast = self.substring(0,selfCommaPosition); 71 System.out.println("\nLast Names . . ."); 72 System.out.println(singerLast); 73 System.out.println(sculptorLast); 74 System.out.println(painterLast); 75 System.out.println(dancerLast); 76 System.out.println(selfLast); 77 78 //point F: compute and print the names, again 79 System.out.println("\nFirst names,once again . . ."); 80 System.out.println(firstName(singer)); 81 System.out.println(firstName(sculptor)); 82 System.out.println(firstName(painter)); 83 System.out.println(firstName(dancer)); 84 System.out.println(firstName(self)); 85 86 //point G: compute and print the last names, again 87 System.out.println("\nLast names, once again . . ."); 88 System.out.println(lastName(singer)); 89 System.out.println(lastName(sculptor)); 90 System.out.println(lastName(painter)); 91 System.out.println(lastName(dancer)); 92 System.out.println(lastName(self)); 93 94 //point H: compute and print the full names, natural style 95 System.out.println("\nFull names, natural style . . ."); 96 System.out.println(fullName(singer)); 97 System.out.println(fullName(sculptor)); 98 System.out.println(fullName(painter)); 99 System.out.println(fullName(dancer)); 100 System.out.println(fullName(self)); 101 } 102 103 private static String fullName(String dsn) { 104 String fir = firstName(dsn); 105 String las = lastName(dsn); 106 String full = fir + " " + las; 107 return full; 108 } 109 110 private static String lastName(String directoryStyleName) { 111 int comma = directoryStyleName.indexOf(","); 112 String last = directoryStyleName.substring(0,comma); 113 return last; 114 } 115 116 private static String firstName(String directoryStyleName) { 117 int spacePosition = directoryStyleName.indexOf(" "); 118 String first = directoryStyleName.substring(spacePosition + 1); 119 return first; 120 } 121 } 122