java 中怎么返回 Map 接口的子类集合?

Map 是一个接口?
public Map<?,?> searchBoard(){
Map m = new HashMap();
m.push( key,value );
m 是一个集合吧?
}
public static void main(String[] args) {
怎么来接收上面那个 m 集合啊?
}

Map是一个接口对象,HashMap是实现了该接口的哈希对象类,另一个实现Map接口的类是Hashtable(也是哈希对象类)。
Map<?,?>中的两个问号是理解哈希对象的关键点:第一个问号表示“键”的数据类型,第二问号表示“值”的数据类型,键和值的数据类型是任意的。所有实现Map接口的类(也就两个:HashMap、Hashtable)的对象都是基于“键-值”对的形式来存取对象的:
Map<String, Object> hash= new HashMap<String, Object>(); //接口对象用子类实例化,键为String型,值为Object型
hash.put("Name", "张三其"); //取元素
Object obj = hash.get("Name"); //根据键Name返回对应的值

有关哈希对象的深度理解,可以参考数据结构中“哈希表”的知识。
具体对你的应用,可以这样写:
import java.util.HashMap;
import java.util.Map;

public class Test6 {

public static void main(String[] args) {
Test6 obj = new Test6();
Map<String,Object> m = new HashMap<String,Object>();
m = obj.searchBoard();
System.out.println("Name : " + m.get("Name"));
System.out.println("Gender : " + m.get("Gender"));
}

public Map<String,Object> searchBoard(){
Map<String,Object> m = new HashMap<String,Object>();
m.put("Name","张三其");
m.put("Gender", "男");
return m;
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-03-28
Map m = searchBoard();追问

定义??:Map boMap = new HashMap();
给集合赋值??:boMap.put(rs.getString(2), rs);
接收??:Map m = searchBoard();

第2个回答  2015-07-15
public List<Map<String,Object>> getMap (){
List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();
return list;
}
相似回答