package arraylists; import java.util.ArrayList; import java.util.List; public class ArrayListProcessing { public static void main(String[] args) { // POINT A: Add some strings which represent names to an ArrayList. List<String> names = new ArrayList<>(); names.add("Holiday, Billie"); names.add("Claudel, Camille"); names.add("Picasso, Pablo"); names.add("Gallen-Kallela, Akseli"); names.add("Zotto, Osvaldo"); names.add("Ahir, Vishal"); names.add("Singh, Sooraj"); names.add("Patel, Preet"); List<String> firstNamesList = firstNames(names); System.out.println("first names: "); for (String firstName : firstNamesList) { System.out.println(firstName + " "); } System.out.println(); String firstNames = String.join(" ,", firstNamesList); System.out.println("firstNames: " + firstNames); List<String> lastNamesList = lastNames(names); System.out.println("last names: "); for (String lastName : lastNamesList) { System.out.println(lastName + " "); } System.out.println(); String lastNames = String.join(" ,", lastNamesList); System.out.println("lastNames: " + lastNames); List<String> upperCaseFirstNamesList = upperCaseNames(firstNames(names)); String uppercaseFirstNames = String.join(" , ", upperCaseFirstNamesList); System.out.println("Uppercase first names: " + uppercaseFirstNames); List<String> hyphenatedNamesList = hyphenatedNames(names); String hyphenatedNames = String.join(" , ", hyphenatedNamesList); System.out.println(" hyphenated names: " + hyphenatedNames); int totalLength = totalNameLength(names); System.out.println("Total length: " + totalLength); int firstlength = totalNameLength(firstNames(names)); System.out.println(" Totalfirst length: " + firstlength); int Product = totalNameProduct(names); System.out.println("TotalName Product: " + Product); int secondlength = totalNameProduct(firstNames(names)); System.out.println(" Totalsecondlength: " + secondlength); } private static String firstName(String directoryStyleName) { int commaposition = directoryStyleName.indexOf(","); return directoryStyleName.substring(commaposition + 1); } private static List<String> firstNames(List<String> names) { List<String> firsts = new ArrayList<>(); for (String name : names) { firsts.add(firstName(name)); } return firsts; } private static String lastName(String directoryStyleName) { int commaposition = directoryStyleName.indexOf(","); return directoryStyleName.substring(0, commaposition); } private static List<String> lastNames(List<String> names) { List<String> firsts = new ArrayList<>(); for (String name : names) { firsts.add(lastName(name)); } return firsts; } public static List<String> upperCaseNames(List<String> names) { List<String> uppercase = new ArrayList<>(); for (String name : names) { uppercase.add(name.toUpperCase()); } return uppercase; } public static List<String> hyphenatedNames(List<String> names) { List<String> hyphenateds = new ArrayList<>(); for (String name : names) { if (name.contains("-")) { hyphenateds.add(name); } } return hyphenateds; } public static int totalNameLength(List<String> names) { int totalLength = 0; for (String name : names) { totalLength = totalLength + name.length(); } return totalLength; } public static int totalNameProduct(List<String> names) { int totalProduct = 1; for (String name : names) { totalProduct = totalProduct * name.length(); } return totalProduct; } }