1 /* 2 * This program will do a bit of character string processing. 3 */ 4 package stringthing; 5 6 public class StringThing { 7 8 public static void main(String [] args) { 9 //POINT A: CREATE A PRINT SOME STRINGS THAT REPRESENT NAMES 10 String singer = "Holiday, Billie"; 11 String sculptor = "Claudel, Camille"; 12 String painter = "Picasso, Pablo"; 13 String dancer = "Zotto, Osvaldo"; 14 String self = "Gordon, Cambria"; 15 System.out.println("\nNames ..."); 16 System.out.println(singer); 17 System.out.println(sculptor); 18 System.out.println(painter); 19 System.out.println(dancer); 20 System.out.println(self); 21 22 // POINT B: COMPUTE AND PRINT THE LENGTHS OF THE STRINGS, WITHOUT LABELS 23 int singerLength = singer.length(); 24 int sculptorLength = sculptor.length(); 25 int painterLength = painter.length(); 26 int dancerLength = dancer.length(); 27 int selfLength = self.length(); 28 System.out.println("\nName lengths ..."); 29 System.out.println( singer + ": " + singerLength); 30 System.out.println(sculptor + ": " + sculptorLength); 31 System.out.println(painter + ": " + painterLength); 32 System.out.println(dancer + ": " + dancerLength); 33 System.out.println(self + ": " + selfLength); 34 35 // POINT C: COMPUTE AND PRINT THE LOCATION OF THE COMMA WITHIN EACH STRING, NO LABELS 36 int singerCommaPosition = singer.indexOf(","); 37 int sculptorCommaPosition = sculptor.indexOf(","); 38 int painterCommaPosition = painter.indexOf(","); 39 int dancerCommaPosition = dancer.indexOf(","); 40 int selfCommaPosition = self.indexOf(","); 41 System.out.println("\nComma positions ..."); 42 System.out.println(singer + ": " + singerCommaPosition); 43 System.out.println(sculptor + ": " + sculptorCommaPosition); 44 System.out.println(painter + ": " + painterCommaPosition); 45 System.out.println(dancer + ": " + dancerCommaPosition); 46 System.out.println(self + ": " + selfCommaPosition); 47 48 // POINT D: COMPUTE AND PRINT THE FIVE FIRST NAMES, WITH NO LABELS 49 String singerFirst = singer.substring(singerCommaPosition + 2); 50 String sculptorFirst = sculptor.substring(sculptorCommaPosition + 2); 51 String painterFirst = painter.substring(painterCommaPosition + 2); 52 String dancerFirst = dancer.substring(dancerCommaPosition + 2); 53 String selfFirst = self.substring(selfCommaPosition +2); 54 System.out.println("\nFirst names ..."); 55 System.out.println(singerFirst); 56 System.out.println(sculptorFirst); 57 System.out.println(painterFirst); 58 System.out.println(dancerFirst); 59 System.out.println(selfFirst); 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(dancer)); 80 System.out.println(firstName(self)); 81 82 // POINT G: COMPUTE AND PRINT THE LAST NAMES, AGAIN 83 System.out.println("\nLast names, once again ..."); 84 System.out.println(lastName(singer)); 85 System.out.println(lastName(sculptor)); 86 System.out.println(lastName(painter)); 87 System.out.println(lastName(dancer)); 88 System.out.println(lastName(self)); 89 90 // POINT H: COMPUTE AND PRINT THE FULL NAMES, NATURAL STYLE 91 System.out.println("\nFull names, natural style ..."); 92 System.out.println(fullName(singer)); 93 System.out.println(fullName(sculptor)); 94 System.out.println(fullName(painter)); 95 System.out.println(fullName(dancer)); 96 System.out.println(fullName(self)); 97 } 98 99 private static String fullName(String dsn) { 100 int dsnCommaPosition = dsn.indexOf(","); 101 String firstName = dsn.substring(dsnCommaPosition +2); 102 String lastName = dsn.substring(0, dsnCommaPosition); 103 String fullName = firstName + " " + lastName; 104 return fullName; 105 } 106 107 private static String lastName(String directoryStyleName) { 108 int dsnCommaPosition = directoryStyleName.indexOf(","); 109 String lastname = directoryStyleName.substring(0, dsnCommaPosition); 110 return lastname; 111 } 112 113 private static String firstName(String directoryStyleName) { 114 int dsnCommaPosition = directoryStyleName.indexOf(","); 115 String firstName = directoryStyleName.substring(dsnCommaPosition + 2); 116 return firstName; 117 } 118 } 119