map和list 的相互转换
来源:互联网 发布:淘宝关键词挖掘大师 编辑:程序博客网 时间:2024/05/20 10:24
最近在做项目的时候需要用到list类型的数据转换为map类型,于是在网上查了些资料,其相应的代码均经过测试,并通过!
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
public class project2 {
public static List mapTransitionList(Map map) {
List list = new ArrayList();
Iterator iter = map.entrySet().iterator(); //获得map的Iterator
while(iter.hasNext()) {
Entry entry = (Entry)iter.next();
list.add(entry.getValue()); //只是获取相对应的value值
}
return list;
}
public static void main(String[] args) {
Map map = new HashMap();
map.put("name", "悟道");
map.put("lever", "初级");
map.put("language", "java");
List list = mapTransitionList(map);
List list2=new ArrayList(map.values());
for(int i=0; i<list.size(); i++) {
System.out.println(list.get(i));
System.out.println(list2.get(i));
}
}
}
结果:
2.将map放到list中
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
public class project2 {
public static List mapTransitionList(Map map) {
List list = new ArrayList();
Iterator iter = map.entrySet().iterator(); //获得map的Iterator
while(iter.hasNext()) {
Entry entry = (Entry)iter.next();
list.add(entry);
}
return list;
}
public static void main(String[] args) {
Map map = new HashMap();
map.put("name", "悟道");
map.put("lever", "初级");
map.put("language", "java");
List list = mapTransitionList(map);
for(int i=0; i<list.size(); i++) {
System.out.println(list.get(i));
}
}
}
结果:
3.将map的key和value放在不同的list中
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
public class project3 {
public static void testMapVoid (Map map) {
List listKey = new ArrayList();
List listValue = new ArrayList();
Iterator it = map.keySet().iterator();
while (it.hasNext()) {
String key = it.next().toString();
listKey.add(key);
listValue.add(map.get(key));
}
System.out.println("Convert Finished !");
for(int i =0 ;i<listKey.size();i++){
System.out.print("Key :"+listKey.get(i));
System.out.println(" Value :"+listValue.get(i));
}
}
public static void main(String [] args){
Map map = new HashMap();
map.put("a", "a1");
map.put("b", "b1");
map.put("c", "c1");
testMapVoid(map);
}
}
结果:
4.将整个map转换为list的一条数据Key :b Value :b1Key :c Value :c1Key :a Value :a1
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
public class project2 {
public static void main(String[] args) {
Map map = new HashMap();
map.put("name", "悟道");
map.put("lever", "初级");
map.put("language", "java");
List<Map> list =new ArrayList<Map>();
list.add(map);
for(int i=0; i<list.size(); i++) {
System.out.println(list.get(i));
}
}
}
结果:
[{name=悟道, language=java, lever=初级}]
import
java.util.ArrayList;
import
java.util.HashMap;
import
java.util.List;
public
class
Test{
static
List<Object[]> list=
new
ArrayList<Object[]>();
public
static
void
main(String args[]){
Object a =
new
Object();
Object s =
new
Object();
Object[] o1= {a,
1
};
Object[] o2= {a,
2
};
Object[] o3= {a,
3
};
Object[] s1= {s,
1
};
Object[] s2= {s,
3
};
list.add(o1);list.add(o2);list.add(o3);list.add(s1);list.add(s2);
HashMap<Object,List> map =
new
HashMap<Object,List>();
for
(
int
i =
0
; i < list.size(); i++) {
Object[] array=list.get(i);
if
(map.containsKey(array[
0
])){
map.get(array[
0
]).add(array[
1
]);
}
else
{
List list=
new
ArrayList();
list.add(array[
1
]);
map.put(array[
0
],list);
}
}
System.out.println(map.size());
System.out.println(map.get(a));
System.out.println(map.get(s));
}
}
结果:
import
java.util.ArrayList;
import
java.util.HashMap;
import
java.util.List;
public
class
Test{
static
List<Object[]> list=
new
ArrayList<Object[]>();
public
static
void
main(String args[]){
Object a =
new
Object();
Object s =
new
Object();
Object[] o1= {a,
1
};
Object[] o2= {a,
2
};
Object[] o3= {a,
3
};
Object[] s1= {s,
1
};
Object[] s2= {s,
3
};
list.add(o1);list.add(o2);list.add(o3);list.add(s1);list.add(s2);
HashMap<Object,List> map =
new
HashMap<Object,List>();
for
(
int
i =
0
; i < list.size(); i++) {
Object[] array=list.get(i);
if
(map.containsKey(array[
0
])){
map.get(array[
0
]).add(array[
1
]);
}
else
{
List list=
new
ArrayList();
list.add(array[
1
]);
map.put(array[
0
],list);
}
}
System.out.println(map.size());
System.out.println(map.get(a));
System.out.println(map.get(s));
}
}
2
[1, 2, 3]
[1, 3]
- map和list 的相互转换
- List,Set,Map和数组之间的相互转换
- list,map,set,array的特点和相互转换
- List、String、Map相互转换
- json和map的相互转换
- Bean类和Map的相互转换
- java 对象和map的相互转换
- Map 和 java Bean 的相互转换
- list,set,map,数组间的相互转换
- list,set,map,数组间的相互转换
- list,set,map,数组间的相互转换
- list,set,map,数组间的相互转换
- list,set,map,数组间的相互转换
- list,set,map,数组间的相互转换
- list,set,map,数组间的相互转换
- list,set,map,数组间的相互转换
- list,set,map,数组间的相互转换
- list,set,map,数组间的相互转换
- mapreduce的二次排序 SecondarySort
- Linux系列-目录架构
- seaJs学习笔记之seaJs配置方法
- DNS中的正向解析与反向解析
- CSS 绝对定位属性absolute用法初探
- map和list 的相互转换
- hdu 3065 AC自动机模版题
- OpenCV笔记(copyto,clone)
- cnpack 强制转换 替换 真好用 xe4 真实用
- epoll完整实例
- 代价敏感的学习方法
- 同时在多台服务器上运行相同的命令multixterm的方法
- 使用libcurl获取经过gzip压缩的网页文件
- python异常处理