你是否已经对每次从Map中取得关键字然后再取得相应的值感觉厌倦?使用Map.Entry类,你可以得到在同一时间得到所有的信息。
创新互联专注于河南企业网站建设,响应式网站设计,电子商务商城网站建设。河南网站建设公司,为河南等地区提供建站服务。全流程定制设计,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
标准的Map访问方法如下:
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类提供了一个称为entrySet()的方法,这个方法返回一个Map.Entry实例化后的对象集。
接着,Map.Entry类提供了一个getKey()方法和一个getValue()方法,因此,上面的代码可以被组织得更符合逻辑。举例如下:
Set
entries
=
map.entrySet(
);
if(entries
!=
null)
{
Iterator
iterator
=
entries.iterator(
);
while(iterator.hasNext(
))
{
Map.Entry
entry
=iterator.next(
);
Object
key
=
entry.getKey(
);
Object
value
=
entry.getValue();
;…
}
}
尽管增加了一行代码,我们却省略了许多对Map不必要的"get"调用。同时,提供给开发人员一个同时保持了关键字和其对应的值的类。Map.Entry同时也提供了一个setValue()方法,程序员可以使用它修改map里面的值。
Hashtable内部排列的方式是散列排布,所以当输出信息时会是无序的。为了能保证输出的数据按照顺序排列,不要渴望用java自带的函数来对
Hashtable对象进行调整处理。当我们获取Hashtable里的KEY和VALUE时,一般都运行了Map.Entry类来转换,好,现在就用这
个类来作文章,我具体写了一个方法。
代码:
/**
*
方法名称:getSortedHashtable
*
参数:Hashtable
h
引入被处理的散列表
*
描述:将引入的hashtable.entrySet进行排序,并返回
*/
public
static
Map.Entry[]
getSortedHashtable(Hashtable
h){
Set
set
=
h.entrySet();
Map.Entry[]
entries
=
(Map.Entry[])set.toArray(new
Map.Entry[set.size()]);
Arrays.sort(entries,new
Comparator(){
public
int
compare(Object
arg0,
Object
arg1)
{
Object
key1
=
((Map.Entry)arg0)。getKey();
Object
key2
=
((Map.Entry)arg1)。getKey();
return
((Comparable)key1)。compareTo(key2);
}
});
return
entries;
}
调用这个方法:
Map.Entry[]
set
=
getSortedHashtable(t);
//perportyTable
for
(int
i=0;iset.length;i++){
System.out.println(set[i].getKey()。toString());
System.out.println(set[i].getValue()。toString());
}
这个直接看百度地图的api啊···其实html就可以了···php只是用来记录坐标什么的有用·给你个例子吧·
!DOCTYPE html
html
head
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
style type="text/css"
body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;}
#l-map{height:100%;width:78%;float:left;border-right:2px solid #bcbcbc;}
#r-result{height:100%;width:20%;float:left;}
/style
script type="text/javascript" src=";ak=您的密钥"/script
title百度地图的Hello, World/title
/head
body
div id="allmap"/div
/body
/html
script type="text/javascript"
var map = new BMap.Map("allmap"); // 创建Map实例
var point = new BMap.Point(116.404, 39.915); // 创建点坐标
map.centerAndZoom(point,15); // 初始化地图,设置中心点坐标和地图级别。
map.enableScrollWheelZoom(); //启用滚轮放大缩小
/script
这都是百度地图上的····自己去研究一下吧··
可以用
for(String key : map.keySet()){
System.out.println(key+"="+map.get(key));
}
也可以用迭代器
while(iterator.hasNext()) {
Object key = iterator.next();
Object value = map.get(key);
}