(Use prewritten code attached)
Create a menu-driven application that will have the following options:
1.) Create PhoneBook (will prompt user for name of file to use as input) readFileCreateObject();
2.) Display Entire PhoneBook (in alpha order by last name, and then first name) printLinkedList();
3.) Find a Specific PhoneBook Entry (using user input of last name and first name) findAnEntry();
4.) Add a Specific Phone Book Entry (add it in the correct location of the linked list) addAnEntry();
5.) Change a Specific Phone Book Entry (ex. change the phone or email) changeAnEntry();
6.) Remove a Specific Phone Book Entry (make sure linked list is not "broken" from the removed node) removeAnEntry();
7.) Try-Catch blocks must be implemented to process any File IO Exceptions, as well as Input Format Exceptions from the user's entry of data.
For example, in any method that you ask the user to enter data (find, add, remove), be sure to use a try-catch block to catch the InputMismatchException.
Additionally, put the entire try-catch block in a while loop, checking the status of a boolean "mismatch" flag that will initially be set to true, and when you successfully
input all values, will be set to false.
To create the linked list of the Phone Book, follow these instructions:
1.) Create a program that will read an input file of at least 50 records for an address book.
2.) Each record read will be used to create an object called PhoneBook, consisting of the following 5 String attributes: firstName, lastName, cellPhoneNumber, emailAddress
3.) Each object created will become a node in a linked list address book, where the order of the linked list will be determined by alphabetical order or lastName followed by firstName.
For example, if there are 2 entries with the same last name, a sequential search through the nodes will take place to find the location to insert the new node by first name.
4.) Once all the nodes have been inserted in the linked list, iterate through the entire linked list and print all the nodes in alphabetical order by last name and then first name. Include the phone number and email address in the display.
5.) Try-Catch blocks must be implemented to catch any IO Exceptions, and process them gracefully.
a.) Loop to display the menu, until the user selects to exit
b.) Evaluate the user's selection using a switch - case statement
c.) Create methods for each of the functions mentioned above.
Try to reuse code that is already there. For example, in the method called addAnEntry(), you can do some preliminary work like getting the new phone book entry from the user, creating a PhoneBook object, and then calling the method addToLinkedList(candidateEntry); to reuse code. Similarly, in the changeAnEntry() method, you can call the findAnEntry() method, then call the removeAnEntry() method, and then the addAnEntry() method.
21 freelancers are bidding on average $95 for this job
I am a passionate programmer with experience in programming java applications. I am a hard worker and problem solver and i want to apply my skills to create the application you have outlined