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 = "Picasso, Pablo"; 14 String dancer = "Zotto, Osvaldo"; 15 String self = "Ceilly, Quinn"; 16 System.out.println("\nNames ..."+ singer); 17 System.out.println("Names ..."+ sculptor); 18 System.out.println("Names ..." + painter); 19 System.out.println("Names ..." + dancer); 20 System.out.println("Names ..."+ 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 = " + singerLength); 29 System.out.println("Name lengths = " + sculptorLength); 30 System.out.println("Name lengths = " + painterLength); 31 System.out.println("Name lengths = " + dancerLength); 32 System.out.println("Name lengths = " + 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 = " + singerCommaPosition); 41 System.out.println("Comma positions = " + sculptorCommaPosition); 42 System.out.println("Comma positions = " + painterCommaPosition); 43 System.out.println("Comma positions = " + dancerCommaPosition); 44 System.out.println("Comma positions = " + selfCommaPosition); 45 46 // POINT D: COMPUTE AND PRINT THE FIVE FIRST NAMES, WITH NO LABELS 47 String singerFirst = singer.substring(9); 48 String sculptorFirst = sculptor.substring(9); 49 String painterFirst = painter.substring(9); 50 String dancerFirst = dancer.substring(7); 51 String selfFirst = self.substring(8); 52 System.out.println("\nFirst names ..." + singerFirst); 53 System.out.println("First names ..." + sculptorFirst); 54 System.out.println("First names ..." + painterFirst); 55 System.out.println("First names ..." + dancerFirst); 56 System.out.println("First names ..." + selfFirst); 57 58 // POINT E: COMPUTE AND PRINT THE FIVE LAST NAMES, WITH NO LABELS 59 String singerLast = singer.substring(0,7); 60 String sculptorLast = sculptor.substring(0,7); 61 String painterLast = painter.substring(0,7); 62 String dancerLast = dancer.substring(0,5); 63 String selfLast = self.substring(0,6); 64 System.out.println("\nLast names ..." + singerLast); 65 System.out.println("Last names ..." + sculptorLast); 66 System.out.println("Last names ..." + painterLast); 67 System.out.println("Last names ..." + dancerLast); 68 System.out.println("Last names ..." + selfLast); 69 70 // POINT F: COMPUTE AND PRINT THE FIRST NAMES, AGAIN 71 System.out.println("\nFirst names, once again ..."); 72 System.out.println(firstName(singer)); 73 System.out.println(firstName(sculptor)); 74 System.out.println(firstName(painter)); 75 System.out.println(firstName(dancer)); 76 System.out.println(firstName(self)); 77 78 // POINT G: COMPUTE AND PRINT THE LAST NAMES, AGAIN 79 System.out.println("\nLast names, once again ..."); 80 System.out.println(lastName(singer)); 81 System.out.println(lastName(sculptor)); 82 System.out.println(lastName(painter)); 83 System.out.println(lastName(dancer)); 84 System.out.println(lastName(self)); 85 86 // POINT H: COMPUTE AND PRINT THE FULL NAMES, NATURAL STYLE 87 System.out.println("\nFull names, natural style ..."); 88 System.out.println(fullName(singer)); 89 System.out.println(fullName(sculptor)); 90 System.out.println(fullName(painter)); 91 System.out.println(fullName(dancer)); 92 System.out.println(fullName(self)); 93 } 94 95 private static String firstName(String directoryStyleName) { 96 int i = directoryStyleName.indexOf(",") + 2; 97 return directoryStyleName.substring(i); 98 } 99 100 private static String lastName(String directoryStyleName) { 101 int i = directoryStyleName.indexOf(","); 102 return directoryStyleName.substring(0, i); 103 } 104 105 private static String fullName(String directoryStyleName) { 106 return firstName(directoryStyleName) + " " + lastName(directoryStyleName); 107 } 108 109 } 110