java修改map
⑴ 在java的Map集合中,怎樣更改value的值
map集合沒有專門更改value的方法,更改value的方法就是map.put(key,value),更改就是直接替換,比如想改變key是"1",value是"一"的組合,就是map.put("1","壹"),直接替換就行。
import java.util.HashMap;
public class Demo {
public static void main(String[] args) {
HashMap<String, Integer> map = new HashMap<String, Integer>();
map.put("張三", 89);
map.put("趙四", 100);
System.out.println(map);
if (map.containsKey("張三")) {//判斷如果存在 key ,就修改value
map.put("張三", 98);//修改
}
System.out.println("------分割線------");
System.out.println(map);
}
avaMap集合
Map集合沒有繼承Collection介面,,Map中不能包含相同的key值,每個key只能影射一個相同的value。key值還決定了存儲對象在映射中的存儲位置。
但不是key對象本身決定的,而是通過散列技術進行處理,可產生一個散列碼的整數值,散列碼通常用作一個偏移量,該偏移量對應分配給映射的內存區域的起始位置,從而確定存儲對象在映射中的存儲位置。Map集合包括Map介面以及Map介面所實現的類。
以上內容參考:網路-JavaMap集合
⑵ java中Map集合如何修改裡面的Key值
修改map的key但是不改變該key對應的value值,可以使用
map.put("key2",map.remove("key1"));
比如:
map.put("key1","value1");--此時:key1--value1
map.put("key2",map.remove("key1"));--此時 :key2--value1
⑶ java中的map怎麼根據key值修改value值
java:Map param = new HashMap();
param.put("a","3333");
System.out.println(param.get("a")); //3333
if(param.containsKey("a")){
param.put("a", "565");}
System.out.println(param.get("a"));//565
map存值就類似於往一個瓶子中放東西,而key就是標簽,value就是其中放的東西,而取值的時候就相當於取東西,要知道所要取的東西的標簽才可以取東西,也就是map.get("key")。
key value根據關鍵字取值
如果輔以Real-Time Search Engine(實時搜索引擎)進行復雜條件檢索、全文檢索,就可以替代並發性能較低的MySQL等關系型資料庫,達到高並發、高性能,節省幾十倍伺服器數 量的目的。以MemcacheDB、Tokyo Tyrant為代表的key-value分布式存儲,在上萬並發連接下,輕松地完成高速查詢。而MySQL,在幾百個並發連接下,就基本上崩潰了。
以上內容參考:網路-Key-Value
⑷ 在java的Map集合中,怎樣更改value的值
map集合沒有專門更改value的方法,更改value的方法就是map.put(key,value),更改就是直接替換,比如想改變key是"1",value是"一"的組合,就是map.put("1","壹"),直接替換就行。
import java.util.HashMap;
import java.util.Map;
public class Demo {
public static void main(String[] args) {
Map<Integer,Integer> m = new HashMap<Integer,Integer>();
m.put(1, 1);
print(m);
m.put(1, 2);
print(m);
}
private static void print(Map<Integer, Integer> m) {
for(Map.Entry<Integer, Integer> mm : m.entrySet())
System.out.println("K: "+mm.getKey()+",V: "+mm.getValue());
}
}
(4)java修改map擴展閱讀
集合類有一個共同特點,就是它們只容納對象(實際上是對象名,即指向地址的指針)。這一點和數組不同,數組可以容納對象和簡單數據。如果在集合類中既想使用簡單數據類型,又想利用集合類的靈活性,就可以把簡單數據類型數據變成該數據類型類的對象,然後放入集合中處理,但這樣執行效率會降低。
集合類容納的對象都是Object類的實例,一旦把一個對象置入集合類中,它的類信息將丟失,也就是說,集合類中容納的都是指向Object類對象的指針。
這樣的設計是為了使集合類具有通用性,因為Object類是所有類的祖先,所以可以在這些集合中存放任何類而不受限制。當然這也帶來了不便,這令使用集合成員之前必須對它重新造型。
集合類是Java數據結構的實現。在編寫程序時,經常需要和各種數據打交道,為了處理這些數據而選用數據結構對於程序的運行效率是非常重要的。