Hallo,
ich bin dabei mir selber das programmieren beizubringen.
Allerdings würde ich immer gerne meinen Code verbessern.
Was würdet ihr hier anders/besser machen?
Es geht im Grunde darum, eine Kontaktliste auf dem Handy zu verwalten.
Man kann Kontakte hinzufügen, updaten, löschen, anzeigen, suchen.
Hier der Code:
ich bin dabei mir selber das programmieren beizubringen.
Allerdings würde ich immer gerne meinen Code verbessern.
Was würdet ihr hier anders/besser machen?
Es geht im Grunde darum, eine Kontaktliste auf dem Handy zu verwalten.
Man kann Kontakte hinzufügen, updaten, löschen, anzeigen, suchen.
Hier der Code:
Java:
public class Contact {
private String name;
private String number;
public Contact(String name, String number){
this.name=name;
this.number=number;
}
public String getName() {
return name;
}
public String getNumber() {
return number;
}
}
Java:
import java.util.ArrayList;
import java.util.Scanner;
public class MobilePhone {
private ArrayList<Contact> contact = new ArrayList();
private static Scanner scanner = new Scanner(System.in);
public void printContactList(){
for(int i = 0; i< contact.size(); i++){
System.out.println("Name: " + contact.get(i).getName() + "\t" + "Number: " + contact.get(i).getNumber());
}
}
public void storeContact(String name){
if(findContact(name)){
System.out.println("Contact already exists");
}
else{
System.out.print("Enter number: ");
String number = scanner.nextLine();
contact.add(new Contact(name, number));
System.out.println("Contact " + name + " stored");
}
}
public void updateContact(String name){
if(!findContact(name)){
System.out.println("No contact exists with that name!");
}
else{
int pos = getPosOfContact(name);
System.out.print("Enter new name: ");
name = scanner.nextLine();
if(findContact(name)){
System.out.println("Contact already exist. Update wasn't successful.");
}
else{
System.out.print("Enter new number: ");
String number = scanner.nextLine();
contact.set(pos, new Contact(name, number));
System.out.println("Contact updated successfully!");
}
}
}
public void removeContact(String name){
if(!findContact(name)){
System.out.println("No contact exists with that name!");
}
else{
int pos = getPosOfContact(name);
contact.remove(pos);
System.out.println("Contact " + name + " removed!");
}
}
public boolean findContact(String name){
for(int i =0;i<contact.size();i++){
if(contact.get(i).getName().equals(name)){
return true;
}
}
return false;
}
public String getContactInfo(String name){
for(int i =0;i<contact.size();i++){
if(contact.get(i).getName().equals(name)){
return "Contact " + contact.get(i).getName() + " has number " + contact.get(i).getNumber();
}
}
return "That contact doesn't exist!";
}
public int getPosOfContact(String name){
for(int i =0;i<contact.size();i++){
if(contact.get(i).getName().equals(name)){
return i;
}
}
return -1;
}
}
Java:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Main.printMenu();
Scanner scanner = new Scanner(System.in);
String name="",number="";
boolean quit=false;
MobilePhone mp =new MobilePhone();
while(!quit){
switch(scanner.nextInt()){
case 1:
quit=true;
break;
case 2:
mp.printContactList();
break;
case 3:
System.out.print("Enter name: ");
scanner.nextLine();
name = scanner.nextLine();
mp.storeContact(name);
break;
case 4:
System.out.print("Enter name to update: ");
scanner.nextLine();
name = scanner.nextLine();
mp.updateContact(name);
break;
case 5:
System.out.print("Enter name to remove: ");
scanner.nextLine();
name = scanner.nextLine();
mp.removeContact(name);
break;
case 6:
System.out.print("Enter name to find: ");
scanner.nextLine();
name = scanner.nextLine();
System.out.println(mp.getContactInfo(name));
break;
default:
quit=true;
break;
}
}
}
public static void printMenu(){
System.out.println("1: Quit");
System.out.println("2: Print list of contacts");
System.out.println("3: Add new contact");
System.out.println("4: Update existing contact");
System.out.println("5: Remove Contact");
System.out.println("6: Search/Find Contact");
System.out.println("---------------------------------\n\n");
}
}
Zuletzt bearbeitet: