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

Why 256 x 8 memory chips is require to design 2k x 8 memory, A number of 25...

A number of 256 x 8 bit memory chips are available. To design a memory organization  of 2 K x 8 memory. Identify the requirements of 256 x 8 memory chips and explain the details.

Determine the minimum bandwidth of the system, Data is to be transmitted us...

Data is to be transmitted using a modem at 9600 bps. Determine the minimum bandwidth of the system with the following modulation methods (a) FSK (b) ASK. Use the excess bandwidth f

Double negation, Double Negation : All parents are forever correcting ...

Double Negation : All parents are forever correcting their children for the find of double negatives,  there we have to be very alert with them in natural language like: "He d

Real-time software, Real-Time Software Programs that monitor/analyze...

Real-Time Software Programs that monitor/analyze/ control real world events as they take place are known as real-time software. Elements of real-time software involve a data

Explain communications and synchronization, Communications Parallel t...

Communications Parallel tasks normally have to exchange data. There are various manners in which this can be achieved like over a network or through a shared memory bus. The

Differences between inter statement and intra statement, Differences betwee...

Differences between inter statement and intra statement delay? //define register variables reg a, b, c; //intra assignment delays initial begin a = 0; c = 0;

Goals and design principles, This is an applied unit that shows you how to ...

This is an applied unit that shows you how to assess interactive products against a selection of usability and user experience goals. It also introduces a selection of design princ

What are dynamic process groups, Q. What are Dynamic Process Groups? To...

Q. What are Dynamic Process Groups? To create and manage dynamic groups a separate library libgpvm3.a should be linked with the user programs which make use of any of group fun

Explain the low level language - computer programming, Explain the Low Leve...

Explain the Low Level Language - Computer Programming? An assembly language or a machine language is known as Low-level language which are closer to the hardware than are high-

Explain the operation of JK flip flop when all inputs are 0, Write the trut...

Write the truth table for a clocked J-K flip-flop that is triggered by the positive-going edge of the clock signal. Explain the operation of this flip-flop for the following condit

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