① java中怎麼遍歷map中value值
Java中遍歷Map對象的4種方法:
1、通過Map.entrySet遍歷key和value,在for-each循環中使用entries來遍歷.推薦,尤其是容專量大時。
(1)java讀取map擴展閱讀:
關於JAVA的遍歷知識補充:
1、list和set集合都實現了Iterable介面,所以他們的實現類可以使用迭代器遍歷,map集合未實現該介面,若要使用迭代器循環遍歷,需要藉助set集合。
2、使用EntrySet 遍歷,效率更高。
② java中如何使用map存取數據
java中使用map存取數據的方法如下:
1、需要指定其中的K,V;k=keyv=value。
③ 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,編譯器就會抗議。
泛型學起來有一定難度,尤其是一些高級用法,寫起來有時會覺得繁瑣,但是我認為物有所值,能夠幫助我們在編譯期發現不少潛在問題,寫出代碼更強健。
④ Java讀入文件解析輸出Map
你這Map<String, Map<String, Float>>沒看明白,map裡面還有個map?
一層map示例如下,兩層map請說明白
importjava.io.*;
importjava.util.HashMap;
importjava.util.Map;
publicclassTest
{
publicstaticvoidmain(String[]args)throwsException
{
Map<String,Float>map=newHashMap<String,Float>();
//如果你文件里沒有中文,那個GBK編碼就無所謂,否則要按實際編碼來定
BufferedReaderbr=
newBufferedReader(newInputStreamReader(newFileInputStream(newFile("d:/test.txt")),"GBK"));
Stringstr;
while((str=br.readLine())!=null)
{
//如果分隔符不是空格,改成對應的分隔符,比如tab即" "
String[]strs=str.split("");
if(strs.length!=3)
{
System.out.println("格式錯誤:"+str);
}
try
{
map.put(strs[1],Float.parseFloat(strs[2]));
}
catch(NumberFormatExceptione)
{
e.printStackTrace();
}
}
}
}
⑤ java map中怎麼通過鍵取出值
在java map中取出鍵值有以下兩種方法:
1.第一種方法根據鍵值的名字取值
import java.util.HashMap;
import java.util.Ma
ublic class Test {
public static void main(String[] args)
{ // TODO Auto-generated method stub
Map<String, Object> map=new HashMap<String, Object>();
map.put("id", "sunny");
map.put("value", "syl");
System.out.println(map.get("id"))
System.out.println(map.get("value")); }
2.第二種方法:遍歷
import java.util.HashMap;
import java.util.Map;
import java.util.Set
ublic class Test {
public static void main(String[] args)
{
Map<String, Object> map=new HashMap<String, Object>();
map.put("id", "sunny");
map.put("value", "syl");
Set<String> get = map.keySet();
for (String test:get)
{
System.out.println(test+","+map.get(test));
} }
⑥ java中如何從一個文件中讀hashmap對象
get(Object
key)
返回指定鍵在此標識哈希映射中所映射的值,如果對於此鍵來說,映射不包含任何版映射關系,則返回權
null。
比如你有個HashMap對象
map
然後map.getv(key),就能讀取裡面的對象
⑦ java怎麼取map中的key值
map迭代,需要使用map的,問度娘後記錄使用方法如下,希望更多人能學習到.
public class MyUtil1 {
public static void
iteratorMap1(Map m) {
Set
set=m.keySet();//用介面實例介面
Iterator iter =
set.iterator();
while (iter.hasNext())
{//遍歷二次,速度慢
String
k=(String)iter.next();
System.out.println(k +"="+ m.get(k));
//System.out.println(iter.next()+"="+
m.get(iter.next()));
//因為指針判斷下一個有沒有值 iter.next是當前對象
但是 m.get(iter.next())是下一個值
}
public static void iteratorMap(Map m){
Iterator
i=m.entrySet().iterator();
while(i.hasNext()){//只遍歷一次,速度快
Map.Entry
e=(Map.Entry)i.next();
System.out.println(e.getKey()+"="+e.getValue());
//System.out.println(e.setValue(""));//返回value的值
}
}
⑧ java 怎麼樣獲取Map中第幾個鍵值對
publicstaticvoidmain(String[]args){
Map<String,String>map=newHashMap<String,String>();
map.put("key1","value1");
map.put("key2","value2");
map.put("key3","value3");
Set<String>keySet=map.keySet();
inti=map.size()-1;
Map<Integer,String>mapKey=newHashMap<Integer,String>();
Map<Integer,String>mapValue=newHashMap<Integer,String>();
for(java.util.Map.Entry<String,String>entry:map.entrySet()){
//將原來MAP的VALUE放入新的MAP的VALUE裡面
mapKey.put(i,entry.getValue());
//將原來MAP的KEY放入新的MAP的VALUE裡面
mapValue.put(i,entry.getKey());
i--;
}
//列印KEY值
System.out.println(mapKey.get(2));
//列印VALUE值
System.out.println(mapValue.get(0));
}
⑨ java語言如何循環讀取Map對象內的數據
for(Map.Entry<String, List> entry : map.entrySet()) {
System.out.println(entry.getKey());
List ls=entry.getValue();
}
Iterator it = map.keySet().iterator();
while(it.hasNext()){
String key = (String) it.next();
List value = map.get(key);
}
⑩ java讀取txt文件,文件中的內容如下所示。map結構,讀出來的一行String怎麼轉換為Map。請問我該怎麼做
Stringstr="用戶ID:987654321;用戶名:李四;用戶IP:192.168.1.1;活動時間:2015-01-1312時58分34秒;程序名稱:C:/Windows/system32/DllHost.exe;開始時間:12時58分30秒;結束時間:12時58分34秒;是否鎖定:0";
Map<String,String>map=newHashMap<String,String>();
for(Strings:str.trim().split(";")){
String[]ss=s.trim().split(":");
map.put(ss[0].trim(),ss[1].trim());
}
for(Entry<String,String>e:map.entrySet()){
System.out.println(e.getKey());
System.out.println(e.getValue());
}