我有2个类图,类地址
+forename
+surename
+street
+houseno
+code
+state
+toString
第二个通讯录
insert(address: Address)
toString()
searchSurename (surename: string): Address[*]
+searchForename(forename: string): Address[*]
我实现了地址:
public class Address {
public static String forename;
public static String surename;
public static String street;
public static int houseno;
public static int code;
public static String state;
public String toString(){
return this.forename + this.surename + this.street + this.houseno + this.code + this.state;
}
我怎样才能尽可能简单地实现地址簿?
编辑:
public class addressbook{
private static ArrayList<Address> book;
public addressbook(){
book = new ArrayList<Address>();
}
}
编辑问题:
我是否允许在实现中添加我们在类图中使用的方法或属性之外的新方法或属性?
编辑2:
首先尝试使用 ArrayList 实现方法 searchSurename:
public static String searchSurename(String surename){
boolean exist = false;
if(this.addresses.isEmpty()){
return null;
}
for(int i=0;i<this.addresses.size();i++) {
if(this.addresses.get(i).getSurename() == surename) {
exist=true;
break;
}
if(exist) {
return this.addresses.get(surename);
} else {
return this.addresses.get(surename);
}
}
// return ?!?
}
该程序在任何一行的“this”处给我错误,也许是一个错误,但我不能说!看起来有点太难了,我没有找到任何通过列表搜索很简单的实现。