1 /* 2 * A program to perform some basic operations on a list of String names. 3 */ 4 5 package arraylists; 6 7 import javax.swing.*; 8 import java.util.ArrayList; 9 import java.util.List; 10 11 public class ArrayListProcessing { 12 13 public static void main(String[] args) { 14 //POINT A : Add some strings which represent names to an ArrayList. 15 List<String> names = new ArrayList<>(); 16 names.add("Holiday, Billie"); 17 names.add("Claudel, Camille"); 18 names.add("Picasso, Pablo"); 19 names.add("Gallen-Kallela, Akseli"); 20 names.add("Zotto, Osvaldo"); 21 names.add("Mishra, Neeraj"); 22 names.add("Rauniyar, Adarsh"); 23 24 List<String> firstNamesList = firstNames(names); 25 26 System.out.println("first names: "); 27 for (String firstName : firstNamesList) { 28 System.out.println(firstName + " "); 29 } 30 System.out.println(); 31 32 String firstNames = String.join(" ,", firstNamesList); 33 34 System.out.println("firstNames: " + firstNames); 35 36 37 List<String> lastNamesList = lastNames(names); 38 39 System.out.println("last names: "); 40 for (String lastName : lastNamesList) { 41 System.out.println(lastName + " "); 42 } 43 System.out.println(); 44 45 String lastNames = String.join(" ,", lastNamesList); 46 47 System.out.println("lastNames: " + lastNames); 48 49 List<String> upperCaseFirstNamesList = upperCaseNames(firstNames(names)); 50 String uppercaseFirstNames = String.join(" , " , upperCaseFirstNamesList); 51 52 53 System.out.println("Uppercase first names: " + uppercaseFirstNames); 54 55 List<String> hyphenatedNamesList = hyphenatedNames(names); 56 String hyphenatedNames = String.join(" , " , hyphenatedNamesList); 57 58 59 System.out.println(" hyphenated names: " + hyphenatedNames); 60 61 int totalLength = totalNameLength(names); 62 63 System.out.println("Total length: " + totalLength); 64 int totalfirstlength = totalNameLength(firstNames(names)); 65 System.out.println(" Totalfirst length: " + totalfirstlength); 66 67 int totalProduct = totalNameProduct(names); 68 69 System.out.println("totalName Product: " + totalProduct); 70 int totalsecondlength = totalNameProduct(firstNames(names)); 71 System.out.println(" totalsecondlength: " + totalsecondlength); 72 73 74 75 76 } 77 78 79 80 private static String firstName(String directoryStyleName) { 81 int commaposition = directoryStyleName.indexOf(","); 82 return directoryStyleName.substring(commaposition +1); 83 } 84 85 private static List<String> firstNames(List<String> names) { 86 List<String> firsts = new ArrayList<>(); 87 for (String name : names) { 88 firsts.add(firstName(name)); 89 } 90 return firsts; 91 } 92 93 private static String lastName(String directoryStyleName) { 94 int commaposition = directoryStyleName.indexOf(","); 95 return directoryStyleName.substring(0,commaposition); 96 } 97 98 private static List<String> lastNames(List<String> names) { 99 List<String> firsts= new ArrayList<>(); 100 for (String name : names) { 101 firsts.add(lastName(name)); 102 } 103 return firsts; 104 } 105 106 public static List<String> upperCaseNames(List<String> names){ 107 List<String> uppercases = new ArrayList<>(); 108 for (String name : names){ 109 uppercases.add(name.toUpperCase()); 110 } 111 return uppercases; 112 } 113 114 public static List<String> hyphenatedNames(List<String> names){ 115 List<String> hyphenateds = new ArrayList<>(); 116 for (String name : names){ 117 if (name.contains("-")){ 118 hyphenateds.add(name); 119 } 120 } 121 return hyphenateds; 122 } 123 124 public static int totalNameLength(List<String> names){ 125 int totalLength = 0 ; 126 for (String name : names){ 127 totalLength = totalLength + name.length(); 128 } 129 return totalLength; 130 } 131 public static int totalNameProduct(List<String> names) { 132 int totalProduct = 1; 133 for (String name : names){ 134 totalProduct = totalProduct * name.length(); 135 } 136 return totalProduct; 137 } 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 }