2014-12-02 111 views
-3

我正在努力如何調用存儲在HashMapHashSet中的數據,該方法將返回存儲在它們中的值和大小以及數據?如何從一個方法返回HashSet?

public HashSet <Room> getOccupiedrooms(){ 
    return occupiedRooms.size(); 
} 

這不會編譯,所以我不太確定。並傷口返回存儲的數據。

歡呼

+5

_「這dosent編譯」 _'是大小()'返回集合,而不是集本身的元素個數。快速查看文檔會給你答案,爲什麼這不會編譯。 – 2014-12-02 09:44:56

+0

因此我如何返回存儲在裏面的值 – 2014-12-02 09:46:04

+1

我們不知道'occupiedRooms'的數據類型是什麼,所以我們不能回答,只是做推測。 – 2014-12-02 09:46:38

回答

0

您需要遍歷您的HashSet,檢查每個房間,如果它佔用的房間添加到不同影響HashSet的。

public HashSet<Room> getOccupiedrooms(){ 
HashSet<Room> tempSet = new HashSet<Room>(); 
// iterate start 
// if room is occupied, add room to tempSet 
// iterate end 
// return tempSet 
0

讓我們假設佔有率是一個HashSet。所以只需在你的代碼中刪除.size();你將返回HashSet的大小。

public HashSet <Room> getOccupiedrooms(){ 
    return occupiedRooms; 
} 

這樣你就可以得到它的大小:

getOccupiedrooms().size(); 
0

很難看到的困難是什麼。只返回HashSet本身:

return occupiedRooms;