中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java集合框架及背后的數據結構有哪些

發布時間:2023-03-23 17:25:47 來源:億速云 閱讀:272 作者:iii 欄目:開發技術

今天小編給大家分享一下java集合框架及背后的數據結構有哪些的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

    1. 介紹

    Java 集合框架 Java Collection Framework ,又被稱為容器 container ,是定義在 java.util 包下的一組接口 interfaces 和其實現類 classes 。

    其主要表現為將多個元素 element 置于一個單元中,用于對這些元素進行快速、便捷的存儲 store 、檢索retrieve 、管理 manipulate ,即平時我們俗稱的增刪查改 CRUD 。

    例如,一副撲克牌(一組牌的集合)、一個郵箱(一組郵件的集合)、一個通訊錄(一組姓名和電話的映射關系)等等。

    類和接口總覽

    java集合框架及背后的數據結構有哪些

    java集合框架及背后的數據結構有哪些

    下面我們為大家初步指定三個小問題,希望大家在看完本文章后能對這三個問題有一個清晰的認識。

    1、了解清楚,接口和接口之間的關系。

    2、了解清楚,接口和類之間的關系。

    3、了解清楚,每個類背后的數據結構大概是個啥?

    2. 學習的意義

    2.1 Java 集合框架的優點及作用

    • 使用成熟的集合框架,有助于我們便捷、快速的寫出高效、穩定的代碼

    • 學習背后的數據結構知識,有助于我們理解各個集合的優缺點及使用場景

    2.2 筆試及面試題

    騰訊-Java后臺開發面經

    1. HashMap 了解不,介紹一下,如果一個對象為 key 時,hashCode 和 equals 方法的用法要注意什么?

    2. HashSet 和 HashMap 的區別是什么?

    3. HashMap 是線程安全的么?那需要線程安全需要用到什么?

    阿里巴巴-Java后臺開發面經

    1. ArrayList 和 LinkedList 的區別是什么?

    2. 有了解過 HashMap 的具體實現么?

    3. HashMap 和 ConcurrentHashMap 哪個效率更高?

    今日頭條-Java后臺開發面經

    1. 編程題:判斷一個鏈表是否是一個回文鏈表。

    2. Redis 的 zset 類型對應到 java 語言中大致是什么類型?

    3. hashCode 主要是用來做什么用的?

    3. 接口 interfaces

    3.1 基本關系說明

    java集合框架及背后的數據結構有哪些

    • 1.1. Collection :用來存儲管理一組對象 objects ,這些對象一般被成為元素 elements

    • 2.1.1. Set : 元素不能重復,背后隱含著查找/搜索的語義

    • 2.1.1. SortedSet : 一組有序的不能重復的元素

    • 3.2. List : 線性結構

    • 4.3. Queue : 隊列

    • 5.4. Deque : 雙端隊列

    • 3.2. Map : 鍵值對 Key-Value-Pair ,背后隱含著查找/搜索的語義

    • 4.1.1. SortedMap : 一組有序的鍵值對

    3.2 Collection 接口說明

    Collection 官方文檔

    3.3 Collection 常用方法說明

    java集合框架及背后的數據結構有哪些

    add方法演示:

    Collection<String> collection = new ArrayList<>();
    collection.add("xxh");

    java集合框架及背后的數據結構有哪些

    在沒規定前,collection的add方法中什么都可以添加。

    java集合框架及背后的數據結構有哪些

    而在規定了后,collection的add方法就只能添加字符串了。

    clear方法演示:

    Collection<String> collection = new ArrayList<>();
    collection.add("xxh");
    collection.add("ljq");
    System.out.println(collection);
    collection.clear();
    System.out.println("==============");
    System.out.println(collection);

    java集合框架及背后的數據結構有哪些

    這里不難看出在使用clear方法清除后,我們的元素就全部清空了

    Object[] toArray()方法演示:

    Collection<String> collection = new ArrayList<>();
    collection.add("xxh");
    collection.add("ljq");
    //System.out.println(collection);
    Object[] objects = collection.toArray();
    System.out.println(Arrays.toString(ob

    java集合框架及背后的數據結構有哪些

    3.4 Collection 示例

    import java.util.Collection;
    import java.util.ArrayList;
    import java.util.Arrays;
    public class TestDemo {
        public static void main(String[] args) {
            Collection<String> list = new ArrayList<>();
            System.out.println(list.size());
            System.out.println(list.isEmpty());
            list.add("我");
            list.add("愛");
            list.add("Java");
            System.out.println(list.size());
            System.out.println(list.isEmpty());
            Object[] array = list.toArray();
            System.out.println(Arrays.toString(array));
            for (String s : list) {
                System.out.println(s);
            }
            list.remove("愛");
            for (String s : list) {
                System.out.println(s);
            }
            list.clear();
            System.out.println(list.size());
            System.out.println(list.isEmpty());
    
        }
    }

    java集合框架及背后的數據結構有哪些

    3.5 Map 接口說明Map

    官方文檔

    3.6 Map 常用方法說明

    java集合框架及背后的數據結構有哪些

    3.7 Map 示例

    import java.util.Map;
    import java.util.HashMap;
    public class TestDemo {
        public static void main(String[] args) {
            Map<String, String> map = new HashMap<>();
            System.out.println(map.size());
            System.out.println(map.isEmpty());
            System.out.println(map.get("作者"));
            System.out.println(map.getOrDefault("作者", "佚名"));
            System.out.println(map.containsKey("作者"));
            System.out.println(map.containsValue("佚名"));
            map.put("作者", "魯迅");
            map.put("標題", "狂人日記");
            map.put("發表時間", "1918年");
            System.out.println(map.size());
            System.out.println(map.isEmpty());
            System.out.println(map.get("作者"));
            System.out.println(map.getOrDefault("作者", "佚名"));
            System.out.println(map.containsKey("作者"));
            System.out.println(map.containsValue("佚名"));
            for (Map.Entry<String, String> entry : map.entrySet()) {
                System.out.println(entry.getKey());
                System.out.println(entry.getValue());
            }
        }
    }

    java集合框架及背后的數據結構有哪些

    4.實現'classes'

    java集合框架及背后的數據結構有哪些

    5.數據結構總知識點

    1.集合框架的使用

    • 2.1.Collection

    •    2.List

    •    3.ArrayList

    •    4.LinkedList

    •    5.Stack

    •    6.Queue

    •    7.PriorityQueue

    •    8.Deque

    •    9.Set

    •    10.HashSet

    •    11.TreeSet

    •    12.Map

    •    13.HashMap

    •    14.TreeMap

    •    15.Collections

    3.數據結構的理論及實現

    • 4.1.順序表

    •    2.鏈表

    •    3.棧

    •    4.隊列

    •    5.二叉樹

    •    6.堆

    5.排序算法

    • 6.1. 插入排序

    •    2. 希爾排序

    •    3. 選擇排序

    •    4. 堆排序

    •    5. 冒泡排序

    •    6. 快速排序

    •    7. 歸并排序

    7.Java 語法

    • 8.1. 泛型 Generic

    •    2. 自動裝箱 autobox 和自動拆箱 autounbox

    •    3. Object 的 equals 方法

    •    4. Comparable 和 Comparator 接口

    以上就是“java集合框架及背后的數據結構有哪些”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    桦甸市| 海宁市| 涡阳县| 乐都县| 宽甸| 胶南市| 海盐县| 阿瓦提县| 锦屏县| 亳州市| 常宁市| 滦平县| 肥东县| 三门峡市| 密云县| 黄浦区| 东明县| 乡城县| 达日县| 常山县| 赣州市| 万年县| 都昌县| 定陶县| 虎林市| 东乌珠穆沁旗| 息烽县| 沙坪坝区| 叙永县| 兴安盟| 紫云| 娄底市| 泰州市| 宾川县| 磐安县| 通辽市| 眉山市| 娱乐| 柘荣县| 卢龙县| 云梦县|