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 = "Nathan, Bahr"; 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 // POINT B: COMPUTE AND PRINT THE LENGTHS OF THE STRINGS, WITHOUT LABELS 22 int singerLength = singer.length(); 23 int sculptorLength = sculptor.length(); 24 int painterLength = painter.length(); 25 int dancerLength = dancer.length(); 26 int selfLength = self.length(); 27 System.out.println("\nNames lengths ..."); 28 System.out.println(singerLength); 29 System.out.println(sculptorLength); 30 System.out.println(painterLength); 31 System.out.println(dancerLength); 32 System.out.println(selfLength); 33 34 // POINT C: COMPUTE AND PRINT THE LOCATION OF THE COMMA WITHIN EACH STRING, NO LABELS 35 int singerCommaPosition = singer.indexOf(","); 36 int sculptorCommaPosition = sculptor.indexOf(","); 37 int painterCommaPosition = painter.indexOf(","); 38 int dancerCommaPosition = dancer.indexOf(","); 39 int selfCommaPosition = self.indexOf(","); 40 System.out.println("\nComma positions ..."); 41 System.out.println(singerCommaPosition); 42 System.out.println(sculptorCommaPosition); 43 System.out.println(painterCommaPosition); 44 System.out.println(dancerCommaPosition); 45 System.out.println(selfCommaPosition); 46 47 // POINT D: COMPUTE AND PRINT THE FIVE FIRST NAMES, WITH NO LABELS 48 String singerFirst = singer.substring(0, 7); 49 String sculptorFirst = sculptor.substring(0, 7); 50 String painterFirst = painter.substring(0, 7); 51 String dancerFirst = dancer.substring(0, 5); 52 String selfFirst = self.substring(0, 6); 53 System.out.println("\nFirst names ..."); 54 System.out.println(singerFirst); 55 System.out.println(sculptorFirst); 56 System.out.println(painterFirst); 57 System.out.println(dancerFirst); 58 System.out.println(selfFirst); 59 60 // POINT E: COMPUTE AND PRINT THE FIVE LAST NAMES, WITH NO LABELS 61 String singerLast = singer.substring(9); 62 String sculptorLast = sculptor.substring(9); 63 String painterLast = painter.substring(9); 64 String dancerLast = dancer.substring(7); 65 String selfLast = self.substring(8); 66 System.out.println("\nLast names ..."); 67 System.out.println(singerLast); 68 System.out.println(sculptorLast); 69 System.out.println(painterLast); 70 System.out.println(dancerLast); 71 System.out.println(selfLast); 72 73 // POINT F: COMPUTE AND PRINT THE FIRST NAMES, AGAIN 74 System.out.println("\nFirst names, once again ..."); 75 System.out.println(firstName(singer)); 76 System.out.println(firstName(sculptor)); 77 System.out.println(firstName(painter)); 78 System.out.println(firstName(dancer)); 79 System.out.println(firstName(self)); 80 81 // POINT G: COMPUTE AND PRINT THE LAST NAMES, AGAIN 82 System.out.println("\nLast names, once again ..."); 83 System.out.println(lastName(singer)); 84 System.out.println(lastName(sculptor)); 85 System.out.println(lastName(painter)); 86 System.out.println(lastName(dancer)); 87 System.out.println(lastName(self)); 88 89 // POINT H: COMPUTE AND PRINT THE FULL NAMES, NATURAL STYLE 90 System.out.println("\nFull names, natural style ..."); 91 System.out.println(fullName(singer)); 92 System.out.println(fullName(sculptor)); 93 System.out.println(fullName(painter)); 94 System.out.println(fullName(dancer)); 95 System.out.println(fullName(self)); 96 } 97 98 private static String fullName(String dsn) { 99 return dsn.substring(0, dsn.indexOf(",")) + dsn.substring(dsn.indexOf(" ")); 100 } 101 102 private static String lastName(String directoryStyleName) { 103 return directoryStyleName.substring(directoryStyleName.indexOf(" ")); 104 } 105 106 private static String firstName(String directoryStyleName) { 107 return directoryStyleName.substring(0,directoryStyleName.indexOf(",")); 108 } 109 } 110