java中,下面的List怎么放入map里面,求高手!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中,下面的List怎么放入map里面,求高手!相关的知识,希望对你有一定的参考价值。

List list = new ArrayList();
list.add("a");
list.add("c");
list.add("b");
for(int i =0;i<list.size();i++)
Map map = (Map)list.get(i);

你首先要了解什么是Map,可以理解为Map是一堆key和value的映射集合(或者说一堆键值对的集合)。

List list = new ArrayList();
Map map = new HashMap();
list.add("a");
list.add("c");
list.add("b");
for(int i =0;i<list.size();i++)
map.put(i, list.get(i));  

然后你要用Map里的东西,可以使用map.get(1)这种形式获取,他和list.get(1); 相等都为“c”。


另外建议初始化Map和List的时候,定义好所存的数据类型。

List<String> list = new ArrayList<String>();

Map<Integer, String> map = new HashMap<Integer, String>();

参考技术A List和Map是两个不同类型的集合,list是队列,map是键值映射关系。
比如以学生对为对象,放入list中的就是一个个学生对象,要查看这些对象只能顺序找;对于map应为是的对象和映射关系,比如将学号和学生对应起来,要找某个学生时,只需要给出学号就能直接找到该学生对象,类似图书馆中的书目。
参考技术B Map<String,List> map = new HashMap<String,List>();
//list放入map中
Map.put("list",list);
//取出的时候要注意类型转换
List list = (List)map.getKey("list");
参考技术C Map是键-值的形式,光看你上面代码,完全不需要放进去啊,另你写的也不对
List list = new ArrayList(); list.add("a"); list.add("c"); list.add("b");
Map<String, String> map = new HashMap<String, String>(list.size()); for(int i =0;i<list.size();i++) map.put(list.get(i).toString(), list.get(i).toString());
这样就放进map了,不过没啥意义。
参考技术D 请仔细阅读API中,Java.util,Map类的说明,学java看API才是王道。

怎样获取list集合里面的重复值

一个list里面有多个重复的值
将这个list里面多个重复的值分别放入别的list
listq,q,s,s,w,w,
接着将重复的值取出来分别放入别的list里去
listq.q
listw.w
lists.s

把值放set里,然后再取出来放入list就不会重复,参考如下:
String [] arr = "q","q","s","s","w","w";
Map <String, List<String>> hm = new HashMap<String , List<String>>();
List <String>l = Arrays.asList(arr);
for(Iterator <String>it = l.iterator();it.hasNext();)
String a = it.next();
List <String> temp = hm.get(a);
if(temp == null)
temp = new ArrayList<String>();
hm.put(a, temp);

temp.add(a);
参考技术A LinkedHashMap map = new LinkedHashMap(); List l1 = new ArrayList(); l1.add("1.1"); l1.add("1.2"); l1.add("1.3"); List l2 = new ArrayList(); l2.add("2.1"); l2.add("2.2"); l2.add("2.3"); List l3 = new ArrayList(); l3.add(“3.1”); l3.add("3.2"); l3.add("3.3"); map.put("1", l1); map.put("2", l2); map.put("3", l3); Set keys=map.keySet(); Iterator it=keys.iterator(); while(it.hasNext()) String key=(String)it.next(); System.out.println(key); List valuelist=(List)map.get(key); Iterator it2=valuelist.iterator(); while(it2.hasNext()) String value=(String)it2.next(); System.out.println(value); 参考技术B 列表<整数> inteList = XXXXXXXXXX。 / /在这里,你说的重复数据
把HashSet <整数>设置=新的HashSet <整数>();/ /创建一组重复
(整数集成:inteList值)/ / inteList要保存放
set.add(集成);

目录列表=新的ArrayList();
的list.addAll台(套);/ /设置到列表中追问

list 里面有什么东西我不知道
现在,我要把list里面的东西分别拿出来装入到别的list里面去
如list1,1,2,2,2,3,4,5,5将里面的数据分别装入新的list
lisr1,1
list2,2,2
list3
list4
listt5,5

参考技术C 这个个人感觉要进行遍历比较,把相同的抽取出来,在进行存放。 参考技术D 你这个问题应该是把问题想复杂化了,说一下你的具体应用事例追问

一个list里面有多个重复的值
将这个list里面多个重复的值分别放入别的list
listq,q,s,s,w,w,
接着将重复的值取出来分别放入别的list里去
listq.q
listw.w
lists.s

追答

既然是重复的值 那你都放入一个list有什么意义呢 还不如把每个重复的值记个数

以上是关于java中,下面的List怎么放入map里面,求高手!的主要内容,如果未能解决你的问题,请参考以下文章

怎样获取list集合里面的重复值

如何取出list数据放入map

怎么办map形转换成list

JAVA中map中存储list集合问题。

java中怎么list 转成 map?

怎么将list集合中的数据加载到Map中