1 /* 2 * This program will do a bit of character string processing 3 */ 4 5 package stringthing; 6 7 import javax.swing.*; 8 9 public class StringThing { 10 11 public static void main(String[] args) { 12 // POINT A: CREATE AND PRINT SOME STRINGS THAT REPRESENT NAMES 13 String singer = "Holiday, Billie"; 14 String sculptor = "Claudel, Camille"; 15 String painter = "Picasso, Pablo"; 16 String dancer = "Zotto, Osvaldo"; 17 String self = "Allen, Keith"; 18 19 System.out.println("\nNames ..."); 20 System.out.println(singer); 21 System.out.println(sculptor); 22 System.out.println(painter); 23 System.out.println(dancer); 24 System.out.println(self); 25 26 // POINT B: COMPUTE AND PRINT THE LENGTHS OF THE STRINGS WITHOUT LABELS 27 int singerLength = singer.length(); 28 int sculptorLength = sculptor.length(); 29 int painterLength = painter.length(); 30 int dancerLength = dancer.length(); 31 int selfLength = self.length(); 32 33 System.out.println("\nName lengths ..."); 34 System.out.println(singerLength); 35 System.out.println(sculptorLength); 36 System.out.println(painterLength); 37 System.out.println(dancerLength); 38 System.out.println(selfLength); 39 40 // POINT C: COMPUTE AND PRINT THE LOCATION OF THE COMMA WITHIN EACH STRING, NO LABELS 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 positions"); 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 NAMES, WITH NO LABELS 55 String singerFirst = singer.substring(9); 56 String sculptorFirst = sculptor.substring(9); 57 String painterFirst = painter.substring(9); 58 String dancerFirst = dancer.substring(7); 59 String selfFirst = self.substring(7); 60 61 System.out.println("\nFirst names ..."); 62 System.out.println(singerFirst); 63 System.out.println(sculptorFirst); 64 System.out.println(painterFirst); 65 System.out.println(dancerFirst); 66 System.out.println(selfFirst); 67 68 // POINT E: COMPUTE AND PRINT THE FIVE LAST NAMES, WITH NO LABELS 69 70 String singerLast = singer.substring(0, singerCommaPosition); 71 String sculptorLast = sculptor.substring(0, sculptorCommaPosition); 72 String painterLast = painter.substring(0, painterCommaPosition); 73 String dancerLast = dancer.substring(0, dancerCommaPosition); 74 String selfLast = self.substring(0, selfCommaPosition); 75 76 System.out.println("\nLast names ..."); 77 System.out.println(singerLast); 78 System.out.println(sculptorLast); 79 System.out.println(painterLast); 80 System.out.println(dancerLast); 81 System.out.println(selfLast); 82 83 // POINT F: COMPUTE AND PRINT THE FIRST NAMES, AGAIN 84 System.out.println("\nFirst names, once again ..."); 85 System.out.println(firstName(singer)); 86 System.out.println(firstName(sculptor)); 87 System.out.println(firstName(painter)); 88 System.out.println(firstName(dancer)); 89 System.out.println(firstName(self)); 90 91 // POINT G: COMPUTE AND PRINT THE LAST NAMES, AGAIN 92 System.out.println("\nLast names, once again ..."); 93 System.out.println(lastName(singer)); 94 System.out.println(lastName(sculptor)); 95 System.out.println(lastName(painter)); 96 System.out.println(lastName(dancer)); 97 System.out.println(lastName(self)); 98 99 // POINT H: COMPUTE AND PRINT THE FULL NAMES, NATURAL STYLE 100 System.out.println("\nFull names, natural style ..."); 101 System.out.println(fullName(singer)); 102 System.out.println(fullName(sculptor)); 103 System.out.println(fullName(painter)); 104 System.out.println(fullName(dancer)); 105 System.out.println(fullName(self)); 106 } 107 108 private static String fullName(String directoryStyleName) { 109 int nameComma = directoryStyleName.indexOf(","); 110 int nameLength = directoryStyleName.length(); 111 String lastName = directoryStyleName.substring(0,nameComma); 112 String firstName = directoryStyleName.substring((nameComma+2), nameLength); 113 String fullName = firstName + " " +lastName; 114 return fullName; 115 } 116 117 private static String lastName(String directoryStyleName) { 118 int nameComma = directoryStyleName.indexOf(","); 119 String lastName = directoryStyleName.substring(0,nameComma); 120 return lastName; 121 122 } 123 124 private static String firstName(String directoryStyleName) { 125 int nameComma = directoryStyleName.indexOf(","); 126 int nameLength = directoryStyleName.length(); 127 String firstName = directoryStyleName.substring((nameComma+2), nameLength); 128 return firstName; 129 } 130 } 131