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

Row-major order and column-major order of arrays, Two-dimensional array is ...

Two-dimensional array is represented in memory in following two ways: 1.  Row major representation: To attain this linear representation, the first row of the array is kept in

Electric circuit analysis, mmmmmmmmmmmmm mmmmmmm s s s s s s s s s d d d ...

mmmmmmmmmmmmm mmmmmmm s s s s s s s s s d d d d d d d d d d d d d d f f ff g gg g g g g gg r r r rr r w ww w w ww w w

Definition of lists, Q. Definition of Lists? Another type of list is a ...

Q. Definition of Lists? Another type of list is a definition list. Definition lists have a heading and text appears below that. EXPERTSMI

Explain different system calls for performing different task, Write down di...

Write down different system calls for performing different kinds of tasks. The major types of system calls are given as: Process Control: These kinds of system calls are

Period and space tradeoffs - artificial intelligence, Period and Space Trad...

Period and Space Tradeoffs - artificial intelligence: In practice, you are going to stop your agent for long term using in searching goal at some stage if it has not found a s

Placement algorithm - process allocation, Placement algorithm - computer ar...

Placement algorithm - computer architecture: Different strategies can be taken as to how space is allocated to processes: First fit : Allocate the first hole that is la

What is parallel sections construct, What is Parallel Sections Construct? ...

What is Parallel Sections Construct? The parallel sections construct is a shortcut for specifying a parallel construct comprising one sections construct however no other statem

What are the phases of video production, Question 1: a) What are the p...

Question 1: a) What are the phases of video production? b) What do you mean by storyboards? c) What are the differences between Point and Area (or Paragraph) Text?

Pipelining - computer architecture, Pipelining - computer architecture: ...

Pipelining - computer architecture: The Pipeline Defined According to John Hayes "A pipeline processor consists of a sequence of processing circuits, called stages or

Ground substitution, Ground substitution: Here the act of performing a...

Ground substitution: Here the act of performing an instantiation is a function like there is only one possible outcome means we can write it as a function. And the notation Su

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