成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Map學(xué)習(xí)一之基本操作方法put,get,remove,containsKey

TwIStOy / 1227人閱讀

摘要:返回值存在返回對應(yīng)的值不存在返回創(chuàng)建集合對象趙麗穎楊穎林志玲楊穎迪麗熱巴把指定的鍵所對應(yīng)的鍵值對元素在集合中刪除,返回被刪除元素的值。

package com.itheima.demo01.Map;

import java.util.HashMap;
import java.util.Map;

/*

java.util.Map集合
Map集合的特點:
    1.Map集合是一個雙列集合,一個元素包含兩個值(一個key,一個value)
    2.Map集合中的元素,key和value的數(shù)據(jù)類型可以相同,也可以不同
    3.Map集合中的元素,key是不允許重復(fù)的,value是可以重復(fù)的
    4.Map集合中的元素,key和value是一一對應(yīng)
java.util.HashMap集合 implements Map接口
HashMap集合的特點:
    1.HashMap集合底層是哈希表:查詢的速度特別的快
        JDK1.8之前:數(shù)組+單向鏈表
        JDK1.8之后:數(shù)組+單向鏈表|紅黑樹(鏈表的長度超過8):提高查詢的速度
    2.hashMap集合是一個無序的集合,存儲元素和取出元素的順序有可能不一致

java.util.LinkedHashMap集合 extends HashMap集合
LinkedHashMap的特點:

    1.LinkedHashMap集合底層是哈希表+鏈表(保證迭代的順序)
    2.LinkedHashMap集合是一個有序的集合,存儲元素和取出元素的順序是一致的

*/
public class Demo01Map {

public static void main(String[] args) {
    show04();
}

/*
    boolean containsKey(Object key) 判斷集合中是否包含指定的鍵。
    包含返回true,不包含返回false
 */
private static void show04() {
    //創(chuàng)建Map集合對象
    Map map = new HashMap<>();
    map.put("趙麗穎",168);
    map.put("楊穎",165);
    map.put("林志玲",178);

    boolean b1 = map.containsKey("趙麗穎");
    System.out.println("b1:"+b1);//b1:true

    boolean b2 = map.containsKey("趙穎");
    System.out.println("b2:"+b2);//b2:false
}

/*
    public V get(Object key) 根據(jù)指定的鍵,在Map集合中獲取對應(yīng)的值。
        返回值:
            key存在,返回對應(yīng)的value值
            key不存在,返回null
 */
private static void show03() {
    //創(chuàng)建Map集合對象
    Map map = new HashMap<>();
    map.put("趙麗穎",168);
    map.put("楊穎",165);
    map.put("林志玲",178);

    Integer v1 = map.get("楊穎");
    System.out.println("v1:"+v1);//v1:165

    Integer v2 = map.get("迪麗熱巴");
    System.out.println("v2:"+v2);//v2:null
}

/*
    public V remove(Object key): 把指定的鍵 所對應(yīng)的鍵值對元素 在Map集合中刪除,返回被刪除元素的值。
        返回值:V
            key存在,v返回被刪除的值
            key不存在,v返回null
 */
private static void show02() {
    //創(chuàng)建Map集合對象
    Map map = new HashMap<>();
    map.put("趙麗穎",168);
    map.put("楊穎",165);
    map.put("林志玲",178);
    System.out.println(map);//{林志玲=178, 趙麗穎=168, 楊穎=165}

    Integer v1 = map.remove("林志玲");
    System.out.println("v1:"+v1);//v1:178

    System.out.println(map);//{趙麗穎=168, 楊穎=165}

    //int v2 = map.remove("林志穎");//自動拆箱  NullPointerException
    Integer v2 = map.remove("林志穎");
    System.out.println("v2:"+v2);//v2:null

    System.out.println(map);//{趙麗穎=168, 楊穎=165}
}

/*
    public V put(K key, V value):  把指定的鍵與指定的值添加到Map集合中。
        返回值:v
            存儲鍵值對的時候,key不重復(fù),返回值V是null
            存儲鍵值對的時候,key重復(fù),會使用新的value替換map中重復(fù)的value,返回被替換的value值
 */
private static void show01() {
    //創(chuàng)建Map集合對象,多態(tài)
    Map map = new HashMap<>();

    String v1 = map.put("李晨", "范冰冰1");
    System.out.println("v1:"+v1);//v1:null

    String v2 = map.put("李晨", "范冰冰2");
    System.out.println("v2:"+v2);//v2:范冰冰1

    System.out.println(map);//{李晨=范冰冰2}

    map.put("冷鋒","龍小云");
    map.put("楊過","小龍女");
    map.put("尹志平","小龍女");
    System.out.println(map);//{楊過=小龍女, 尹志平=小龍女, 李晨=范冰冰2, 冷鋒=龍小云}
}

}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/75227.html

相關(guān)文章

  • Map學(xué)習(xí)一之基本遍歷元素的方法

    摘要:集合的第一種遍歷方式通過鍵找值的方式集合中的方法返回此映射中包含的鍵的視圖。 package com.itheima.demo01.Map; import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set; /* Map集合的第一種遍歷方式:通過鍵找值的方式 Map...

    smartlion 評論0 收藏0
  • LRU & LFU Cache

    摘要:首先要做到是,能想到的數(shù)據(jù)結(jié)構(gòu)只有兩三種,一個是,一個是,是,還有一個,是。不太可能,因為長度要而且不可變,題目也沒說長度固定??梢宰龅胶投际恰R驗檫€有函數(shù),要可以,所以還需要一個數(shù)據(jù)結(jié)構(gòu)來記錄順序,自然想到。 LRU Cache 題目鏈接:https://leetcode.com/problems... 這個題要求O(1)的復(fù)雜度。首先要做到get(key)是O(1),能想到的數(shù)據(jù)結(jié)...

    wenshi11019 評論0 收藏0
  • Map學(xué)習(xí)一之基本遍歷元素的方法二(entrySet())

    摘要:集合遍歷的第二種方式使用對象遍歷集合中的方法返回此映射中包含的映射關(guān)系的視圖。 package com.itheima.demo01.Map; import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set; /* Map集合遍歷的第二種方式:使用Entry對象遍歷...

    alin 評論0 收藏0
  • [LeetCode] 399. Evaluate Division

    Problem Equations are given in the format A / B = k, where A and B are variables represented as strings, and k is a real number (floating point number). Given some queries, return the answers. If the ...

    BlackMass 評論0 收藏0
  • Insert Delete GetRandom O(1) & Duplicates allo

    摘要:思路可以實現(xiàn)時間復(fù)雜度的和,但是要求也是,只用是不可以的。但是在里面查找的時間復(fù)雜度依然是,可以想到用來記錄對應(yīng)的,這樣查找的時間也是常數(shù)。用可以保持順序,但是的時間復(fù)雜度是。 380. Insert Delete GetRandom O(1) Design a data structure that supports all following operations in aver...

    2shou 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<