Commit a7169ed
Changed files (1)
src
src/Q1/AddressBook.java
@@ -268,6 +268,27 @@ public class AddressBook implements Comparable<AddressBook> {
this.skypeId = value;
}
+ /**
+ * Converts a name to an Address Book.
+ *
+ * @param name the name to parse.
+ * @return an AddressBook instance.
+ */
+ public static AddressBook parseFrom(String name) {
+ String[] parts = name.split(" ");
+
+ switch (parts.length) {
+ case 1:
+ return new AddressBook(parts[0]);
+ case 2:
+ return new AddressBook(parts[0], "", parts[1]);
+ case 3:
+ return new AddressBook(parts[0], parts[1], parts[2]);
+ default:
+ return new AddressBook();
+ }
+ }
+
/**
* Compares name1 with name2 and returns a string representation. Returns a negative value if
* name1 is less than name2. Returns a positive value if name1 is greater than name2. Returns a
@@ -278,7 +299,7 @@ public class AddressBook implements Comparable<AddressBook> {
* @return string version of -1, 0, 1
*/
public static String compareNames(String name1, String name2) {
- return Integer.toString(name1.compareTo(name2));
+ return Integer.toString(parseFrom(name1).compareTo(parseFrom(name2)));
}
/**