1 package arraylistplay; 2 3 import java.util.ArrayList; 4 import java.util.List; 5 6 7 public class ArrayListProcessing { 8 public static void main(String[] args) { 9 List<String> names = new ArrayList<>(); 10 // Part A 11 names.add("Holiday, Billie"); 12 names.add("Claudel, Camille"); 13 names.add("Picaso, Pablo"); 14 names.add("Gallen-Kallela, Akseli"); 15 names.add("Zotto, Osvaldo"); 16 names.add("Ross, Bob"); 17 names.add("Rogan, Joe"); 18 // Part B 19 20 List<String> firstNamesList = firstNames(names); 21 List<String> lastNamesList = lastNames(names); 22 System.out.print("First names: "); 23 for (String firstName : firstNamesList){ 24 System.out.print(firstName + " "); 25 } 26 System.out.println(); 27 // Part C 28 String firstNames = String.join(", ", firstNamesList); 29 System.out.println("First names: " + firstNames); 30 // Part D 31 String lastNames = String.join(", ", lastNamesList); 32 System.out.println("Last names: " + lastNames); 33 // Part E 34 List<String> upperCaseFirstNameList = upperCaseNames(firstNames(names)); 35 String upperCaseFirstNames = String.join(", ", upperCaseFirstNameList); 36 37 System.out.println("Uppercase first names: " + upperCaseFirstNames); 38 //Part F 39 List<String> hypenatedLastNameList = hyphenatedNames(lastNames(names)); 40 String hypenatedLastNames = String.join(", ", hypenatedLastNameList); 41 42 System.out.println("Hypenated last names: " + hypenatedLastNames); 43 // Part G 44 int totalLength = totalNameLength(names); 45 46 System.out.println("Total Length: " + totalLength); 47 // Part H 48 int firstNameLength = totalNameLength(firstNames(names)); 49 50 System.out.println("First Name Lengths: " + firstNameLength); 51 // Part I 52 int ProductofFirstNames = productNameLength(firstNames(names)); 53 54 System.out.println("Product of First Name Lengths: " + ProductofFirstNames); 55 56 57 58 } 59 60 // Part B 61 62 private static String firstName (String directoryStyleName) { 63 int directoryStyleNameComma = directoryStyleName.indexOf(","); 64 int directorylength = directoryStyleName.length(); 65 directoryStyleName = directoryStyleName.substring(directoryStyleNameComma + 1, directorylength); 66 return directoryStyleName; 67 } 68 private static String lastName (String directoryStyleName2){ 69 int directoryStyleNameComma = directoryStyleName2.indexOf(","); 70 directoryStyleName2 = directoryStyleName2.substring(0, directoryStyleNameComma); 71 return (directoryStyleName2); 72 } 73 74 private static List<String> firstNames(List<String> names){ 75 List<String> firsts = new ArrayList<>(); 76 for (String name : names) { 77 firsts.add(firstName(name)); 78 } 79 return firsts; 80 } 81 private static List<String> lastNames(List<String> names){ 82 List<String> lasts = new ArrayList<>(); 83 for (String name : names) { 84 lasts.add(lastName(name)); 85 } 86 return lasts; 87 } 88 private static List<String> upperCaseNames(List<String> names) { 89 List<String> uppercases = new ArrayList<>(); 90 for (String name : names) { 91 uppercases.add(name.toUpperCase()); 92 } 93 return uppercases; 94 } 95 public static List<String> hyphenatedNames(List<String> names) { 96 List<String> hyphenateds = new ArrayList<>(); 97 for (String name : names) { 98 if (name.contains("-")) { 99 hyphenateds.add(name); 100 } 101 } 102 return hyphenateds; 103 } 104 public static int totalNameLength(List<String> names){ 105 int totalLength = 0; 106 for (String name : names){ 107 totalLength = totalLength + name.length(); 108 } 109 return totalLength; 110 } 111 public static int productNameLength(List<String> names){ 112 int ProductLength = 1; 113 for (String name : names){ 114 ProductLength = ProductLength * name.length(); 115 116 } 117 return ProductLength; 118 } 119 } 120 121 122 123 124