map 中的键值都可以是什么类型的啊
推荐于2017-09-19 · 知道合伙人数码行家
可以叫我表哥
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:25897
获赞数:1464977
2010年毕业于北京化工大学北方学院计算机科学与技术专业毕业,学士学位,工程电子技术行业4年从业经验。
向TA提问 私信TA
关注
展开全部
map 中的键值可以是任何类型的。
Map获取键值
Map以按键/数值对的形式存储数据,和数组非常相似,在数组中存在的索引,它们本身也是对象。
Map的接口
Map---实现Map
Map.Entry--Map的内部类,描述Map中的按键/数值对。
SortedMap---扩展Map,使按键保持升序排列
关于怎么使用,一般是选择Map的子类,而不直接用Map类。
下面以HashMap为例。
public static void main(String args[]) {
HashMap hashmap =new HashMap();
hashmap.put("Item0", "Value0");
hashmap.put("Item1", "Value1");
hashmap.put("Item2", "Value2");
hashmap.put("Item3", "Value3");
Set set=hashmap.entrySet();
Iterator iterator=set.iterator();
while (iterator.hasNext() {
Map.Entry mapentry = (Map.Entry) iterator.next();
System.out.println(mapentry.getkey()+"/"+ mapentry.getValue());
}
}
注意,这里Map的按键必须是唯一的,比如说不能有两个按键都为null。
如果用过它,就会知道它的用处了。
或者:
Java代码
Set keys = map.keySet( );
if(keys != null) {
Iterator iterator = keys.iterator( );
while(iterator.hasNext( )) {
Object key = iterator.next( );
Object value = map.get(key);
}
}
Map获取键值
Map以按键/数值对的形式存储数据,和数组非常相似,在数组中存在的索引,它们本身也是对象。
Map的接口
Map---实现Map
Map.Entry--Map的内部类,描述Map中的按键/数值对。
SortedMap---扩展Map,使按键保持升序排列
关于怎么使用,一般是选择Map的子类,而不直接用Map类。
下面以HashMap为例。
public static void main(String args[]) {
HashMap hashmap =new HashMap();
hashmap.put("Item0", "Value0");
hashmap.put("Item1", "Value1");
hashmap.put("Item2", "Value2");
hashmap.put("Item3", "Value3");
Set set=hashmap.entrySet();
Iterator iterator=set.iterator();
while (iterator.hasNext() {
Map.Entry mapentry = (Map.Entry) iterator.next();
System.out.println(mapentry.getkey()+"/"+ mapentry.getValue());
}
}
注意,这里Map的按键必须是唯一的,比如说不能有两个按键都为null。
如果用过它,就会知道它的用处了。
或者:
Java代码
Set keys = map.keySet( );
if(keys != null) {
Iterator iterator = keys.iterator( );
while(iterator.hasNext( )) {
Object key = iterator.next( );
Object value = map.get(key);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
map中分_KEY和——value。
key的要求是重载了“<”操作符的类型。也就是说,即便是自定义的类,只要重载了<,就可以做key值。(重载时需注意,你重载的“<”应满足 当a<b为真时,则b<=a时必为假)
value的要求是提供默认构造函数 或者是有拷贝构造函数。具体记不太清了。
当然也可以用仿函数或自定义比较函数来做。
具体参见
http://blog.csdn.net/feike2008/article/details/5692774
key的要求是重载了“<”操作符的类型。也就是说,即便是自定义的类,只要重载了<,就可以做key值。(重载时需注意,你重载的“<”应满足 当a<b为真时,则b<=a时必为假)
value的要求是提供默认构造函数 或者是有拷贝构造函数。具体记不太清了。
当然也可以用仿函数或自定义比较函数来做。
具体参见
http://blog.csdn.net/feike2008/article/details/5692774
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
什么类型都可以
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询