❶ java8 怎樣將map轉換成list
Map與List是兩種不同的數據類型,不能直接轉換,要說明具體的需求,比如Map中的key和value與List如何對應。
❷ map,set,list和數組之間的轉換怎麼轉換求高手指點下
★ 數組轉Collection使用Apache Jakarta Commons Collections:import org.apache.commons.collections.CollectionUtils; String[] strArray = {"aaa", "bbb", "ccc"}; List strList = new ArrayList(); Set strSet = new HashSet(); CollectionUtils.addAll(strList, strArray); CollectionUtils.addAll(strSet, strArray); CollectionUtils.addAll()方法的實現很簡單,只是循環使用了Collection的add()方法而已。如果只是想將數組轉換成List,可以用JDK中的java.util.Arrays類:import java.util.Arrays; String[] strArray = {"aaa", "bbb", "ccc"}; List strList = Arrays.asList(strArray); 不過Arrays.asList()方法返回的List不能add對象,因為該方法的實現是使用參數引用的數組的大小來new的一個ArrayList。★ Collection轉數組直接使用Collection的toArray()方法,該方法有兩個重載版本:Object[] toArray(); T[] toArray(T[] a); ★ Map轉Collection直接使用Map的values()方法。★ List和Set轉換List list = new ArrayList(new Hashset());// Fixed-size list
List list = Arrays.asList(array);// Growable
list list = new LinkedList(Arrays.asList(array));// Duplicate elements are discarded
Set set = new HashSet(Arrays.asList(array));
❸ java map對象轉換成list
你是僅僅將value值轉換成list對象嗎?這個簡單,如果你想要全部提出來也是可以的。我發代碼你。
public
List
mapByList(HashMap
map){
List
list
=
new
ArrayList
();
Set
>
set
=
map.entrySet();
Iterator
>
it
=
set.iterator();
//將map對象裡面的屬性循環遍歷出來
while(it.hasNext()){
Entry
entry
=
it.next();
//得到value值,裝到list裡面,也可以entry.getKey()。
//如果2個都需要裝。可以弄成一個對象來裝
list.add(entry.getValue());
}
return
list;
}
差不多就這樣。
❹ java用map把list中首字母相同的單詞放在一起
可以放在一起的
放在一起的方法有;
1. 先創建一個list集合來存放map對象,然後在創建幾個map對象來設置值
2.對map對象進行值的設置,然後把它添加到list中
3.創建一個resultMap的對象用來存最終結果
4.因為map的可以是set集合所以不會重復,就可以這樣設置把所以出現在list中map的key值都設置到resultMap對象中初始值為0
5.然後再次重新遍歷list中的所以map值與resultMap中對應的map的key相同的值相加,因為上一步對resultMap的初始化所以不會擔心key不存在的情況,因此這里就可以實現累加效果
6.最後把resultMap值輸出來就可以看到統計結果了。
❺ java map與list 之間的問題
map的存放是無序的,它存放的是鍵值對,也就是一個鍵對應一個值,如果該鍵已經存在(「aa」)那麼後來的值會替換掉當前的鍵所指向的值。這些可以去看下map的API。你當前只生成了一個對象,一個引用也就是map。所以值總是被後來所取代的。而list是有序的,可以想像成一個數組,它允許重復值得出現,也就是說list.add(1),list.add(1)在這個list中是存在兩個值的。
當你將new Map置於循環之內時,你生成了4個map對象,每個map對象都有自己的 "aa"鍵,並且這些map存放到list中,這樣你可以得到你想要的結果
❻ java題:把一個map放在list里,怎樣再把它拿出來
1.Map<>m=list.get(i);
2.如果不知道是哪一個的話循環遍歷list。
3.你丫的map本來就是容器而且比list高級不少,為啥放到list里,你的list到底是自定義的還是Linkedlist還是ArrayList。在我看來把map放到list中本身就不可取,你的結構有問題,重新想更好的結構。
❼ 在java里怎麼把hashmap轉換成arraylist和iterator
importjava.util.ArrayList;
import
java.util.HashMap;
importjava.util.Iterator;
import
java.util.List;
importjava.util.Map;
publicclassConvertMapToList{
public
staticvoidmain(String[]args){
Mapmap=newHashMap();
map.put("a","a1");
map.put("b",
"b1");
map.put("c",
"c1");
List
listKey=newArrayList();
List
listValue=newArrayList();
Iteratorit=
map.keySet().iterator();
while
(it.hasNext()){
System.out.println(map);
Stringkey=
it.next().toString();
listKey.add(key);
listValue.add(map.get(key));
}
System.out.println("Convert
Finished!");
//outputthecontextofthe
ArrayList
for(inti=0
;i<listKey.size();i++){
System.out.println(listKey);
System.out.print("Key
:"+listKey.get(i));
System.out.println("Value
:"+listValue.get(i));
}
}
}
❽ java中map可以放在list里嗎
一個List對象也無非是一個對象,在Map里存取放置都是一種方式,如果你確定取出來的是某類的對象,直接轉型就可以了:
List c = (List)b.get("a");
在JDK1.5以上提供了泛型,能夠更好地控制類型,減少強行轉型的次數。比如我們如果知道這些List里的元素永遠是String的話,你就可以寫
List<String> a = new ArrayList<String>;
HashMap<String,List<String>> b =new HashMap<String,List<String>>();
b.put("a",a);
...
List<String> c = b.get("a");
最後一步不需要強行轉型,而且如果在b.put("a",a);這一步如果你想往b裡面放一個不是List<String>的東西,或者使用的key不是一個String,編譯器就會抗議。
泛型學起來有一定難度,尤其是一些高級用法,寫起來有時會覺得繁瑣,但是我認為物有所值,能夠幫助我們在編譯期發現不少潛在問題,寫出代碼更強健。
❾ 怎麼把Map類型強制轉換成List類型
轉一個:
實現將HashMap轉換成為ArrayList,並將map的Key 、Value分別存放到兩個ArrayList當中
----------------------------------------------------
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
public class ConvertMapToList {
/**
* 實現將HashMap轉換成為ArrayList,並將map的Key 、Value分別存放到兩個ArrayList當中
* @param args
*/
public static void main(String[] args) {
Map map = new HashMap();
map.put("a", "a1");
map.put("b", "b1");
map.put("c", "c1");
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 !");
//output the context of the ArrayList
for(int i =0 ;i<listKey.size();i++){
System.out.print("Key :"+listKey.get(i));
System.out.println(" Value :"+listValue.get(i));
}
}
}
❿ java 返回一個Map對象得List集合
看使用的人時候是否需要轉,如果是誇語言使用那還是轉一下好,如果你是給內部其他人JAVA調用,可以不轉。因為提供類型比看到一個json串要好,不容易用錯。