我需要幫助重構我的代碼,從使用ArrayList函數到HashMap。從ArrayList到HashMap的重構方法
我已經做了一個圖書館,我可以存儲我的記錄。其中一個我創造了一個新的唱片公司,唱片公司和什麼類型的唱片(CD,乙烯等)。我爲這些人制作了檔案。
下面的這個方法檢查記錄是否存儲在歸檔中,如果是,則返回true,否則返回false。這一個我設法重構到HashMap。
public boolean exists(Record record) {
if(map.containsKey(record.getTitle())) {
return true;
}
return false;
}
這個方法下面增加了一個新的記錄檔案,採用以前的方法我做,如果記錄已添加和虛假如果該記錄在ArrayList中已經存在返回true。這一個我需要幫助重構到HashMap。
public boolean addTo(Record newRecord) {
if(exists(newRecord)){
return false;
} else {
map.add(newRecord);
return true;
}
以下是我嘗試重構它。爲存檔類添加字段變量和構造函數。
public class MediaArchive
{
private String name ;
private String owner ;
private HashMap<String, Plate> map;
public MediaArchive() {
map = new HashMap<String, Record>();
}
public boolean addTo(Record record) {
if(exists(record)){
return false;
} else {
map.add(record);
return true;
}
}
}
所以我需要幫助重構我的「addTo」方法,以便它可以添加記錄到HashMap中。
你可以使用'put'方法做哈希 – MaxZoom
所以把我的.add改爲.put?我有點嘗試過。可能是我的代碼沒有達到標準。你能否詳細說明一下? –
我很快注意到的一件事是你的類名'MediaArchive'與構造函數名不匹配'MedieArkiv' – Bunti