Creating a contacts application, Computer Engineering

Assignment Help:

Creating a contacts application:

First, a contact is defined as the tuple: firstName, lastName, phoneNumber and email.

You will create a class Contact that allows getting and setting of these variables as well as a toString() method.

Second, a ContactBook class should be able to search, create, or modify a contact.

A main class (call it whatever you want) should offer a menu with options.

When adding, the input from the user is gathered and the method ContactBook.addContact(Contact c) will store that contact in memory.

If the user is searching, the program gets the user input and then calls the method ContactBook.search(String lastName). This method should return an ArrayList with all the contacts that matched the criteria. for example, a call to search("Jon") will return an array list with the contacts for "Jones" and "Jonowsky" and any other contact whose last name starts with "Jon". Your search should ignore cases.

If the user wants to modify a contact, the first thing to ask for is that contact's last name. Then the program will search based on that last name (or portion of it, just like the search functionality) using the search method defined earlier. Then the computer should display them with a number next to them (1,2,3...). Then the computer will prompt the user "Which contact do you want to modify" and will expect a number. Then it should enter into a modify screen that will ask the user to modify the values of last name, first name, phone and email. If users just presses enter, the old values are kept. If the user types in something then a new value will be set. After collecting the input of the user, your program should call a method from ContactBook called updateContact(Contact c, String firstName, String lastName, String phone, String email), where c is the contact to modify.

When the user quits (by pressing "q") or saves (by pressing "s") Your contact list should be saved as a Comma Separated values. That is, each line in the file should contain LastName,firstName,phone,email

When the program starts, if the contacts file is present, it should read it and populate the list of contacts.

The contact file should be called "contacts.csv"


Related Discussions:- Creating a contacts application

How to design a sequential circuit, A sequential circuit is signified by a ...

A sequential circuit is signified by a time sequence of external inputs, external outputs and internal flip-flop binary states. So firstly a state diagram and state table is used t

What is a sparse matrix, What is a sparse matrix? Sparse Matrix A m...

What is a sparse matrix? Sparse Matrix A matrix in which number of zero entries is much higher than the number of non-zero entries is known as sparse matrix. The natural me

Association and classes betwnn student and university, Association and clas...

Association and classes betwnn student and university Association and classes are alike in the sense that classes describe objects, and association describe links. Figure shows

Cemistry, Discuss scales and sludge

Discuss scales and sludge

Measuring and improving cache performance, Measuring and Improving Cache Pe...

Measuring and Improving Cache Performance: 1. Reduce the possibility that 2 different memory block will contend for the similar cache location 2. Additional cache levels

Java, differentiate between multitasking and multithreading in java

differentiate between multitasking and multithreading in java

Boolean expression derived from this k-map, Let us see the pairs that can b...

Let us see the pairs that can be considered as adjacent in Karnaugh's here. The pairs are:  1)  The four corners  2)  The four 1's as in top and bottom in column 00 & 01

Concept of pipelining, Describe the concept of pipelining. Ans: Pipeli...

Describe the concept of pipelining. Ans: Pipelining is the means of executing machine instructions concurrently. This is the effective way of organizing concurrent activity in

Python implementation of a solver for the desert cro, Python implementation...

Python implementation of a solver for the desert crossing, Python Programming #Minimum 100 words accepted#

Determine the example of timescale, Determine the Example of timescale ...

Determine the Example of timescale 'timescale 10ns / 1ps Indicates delays are in 10 nanosecond units with 3 decimal points of precision (1 ps is 1/1000ns which is .001 ns).

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd