激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Java教程 - Java中Collection、List、Set、Map之間的關(guān)系總結(jié)

Java中Collection、List、Set、Map之間的關(guān)系總結(jié)

2021-07-17 11:54勁火星空 Java教程

今天小編就為大家分享一篇關(guān)于Java中Collection、List、Set、Map之間的關(guān)系總結(jié),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

初學(xué)java,單個的接觸有點迷糊,所以總結(jié)下他們的關(guān)系

一、關(guān)系

collection

--list:以特定順序存儲

--arraylist、linklist、vector

--set:不能包含重復(fù)的元素

--hashset、treeset

map

--hashmap、hashtable、treemap

二、分別講解

collection:collection是一個父接口,list和set是繼承自他的子接口,collection是最基本的集合接口,java sdk中不提供直接繼承自collection的類,而是提供繼承自他子接口的類,如list何set。所用的collection類都支持一個iterator()方法來遍歷。

list:list接口是有序的,會精確的將元素插入到指定的位置,和下面的set接口不同,list接口允許有相同元素

arraylist:實現(xiàn)可變大小的數(shù)組,允許所有的元素,不是同步的,也就是沒有同步方法

linklist:允許null元素,通常在首部或者尾部操作,所以常被使用做堆棧(stack)、隊列(queue)和雙向隊列(deque)

vector:類似于arraylist,但vector是同步的,stack繼承自vector

set:是一種不包含重復(fù)元素的collection接口

hashset:不能有重復(fù)元素,底層是使用hashmap來實現(xiàn)的

map:此接口實現(xiàn)的key到value的映射,一個map中不能包含相同的key,每個key只能映射一個value

hashtable:實現(xiàn)了一個key-value的哈希表,每一個非null元素都可作為key或者value,hashtable是同步的

hashmap:和hashtable的不同之處是,非同步的,且允許null元素的存在

三、array和arrays   collection和collections

array:是所以隨機訪問一串對象中,最有效率的一種,但是元素類型必須相同,且容量固定無法改變。

arrays:此靜態(tài)類專門操作array,提供搜索、排序、復(fù)制等靜態(tài)方法

collection:java.util下的一個接口,是各種集合結(jié)構(gòu)的父接口

collections:java.util下的一個專用靜態(tài)類,他包含各種集合操作的靜態(tài)方法,包括對集合的搜索、排序、線程安全等操作。

四、總結(jié)

涉及到堆棧、隊列等操作,使用list接口,快速插入和刪除應(yīng)使用linklist,隨機訪問元素使用arraylist

單線程使用非同步類,多線程使用同步類

注意對hashtable的操作,作為key的對象要覆寫equals和hashcode方法

在各種map中hashmap用于快速查找

最長使用的是arraylist、hashset、hashmap、array

下面是一個找出元素字符串?dāng)?shù)組中最長字符串的例子

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package collection;
import java.util.arrays;
import java.util.collections;
import java.util.comparator;
import java.util.list;
public class masstring {
 public static void main(string args []){
 string str[] = new string[]{"zhans", "lis", "wangwt", "quliu"};
 list<string> list = arrays.aslist(str);
 string max = collections.max(list, new strsort()); // collections靜態(tài)函數(shù)的使用
 system.out.println("max: "+max);
 }
}
class strsort implements comparator<string>{
<span style="white-space:pre"> </span>// 一個比較器重新定義
 public int compare(string s1, string s2){
 if(s1.length() < s2.length()){
  return -1;
 }
 if(s1.length() < s2.length()){
  return s1.compareto(s2);
 }
 else return 1;
 }
}

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對服務(wù)器之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

原文鏈接:https://blog.csdn.net/jinhuoxingkong/article/details/51225641

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产成人在线看 | 成人毛片av在线 | 91久久久久久亚洲精品禁果 | 国产精品一区二区三区在线看 | 日本最新免费二区三区 | 中韩毛片| 午夜精品久久久久久久久久久久久蜜桃 | 日本中文一级片 | 亚洲骚妻| 蜜桃一本色道久久综合亚洲精品冫 | 一级黄色免费观看 | 请播放一级毛片 | 久久久精品视频在线观看 | 久久久免费观看完整版 | 伊人午夜| 欧美日本免费一区二区三区 | 黄色网www | 请播放一级毛片 | 欧美综合在线观看视频 | 免费一级特黄欧美大片勹久久网 | 视频一区二区不卡 | 欧美亚洲免费 | 日韩欧美高清片 | 欧美成人一区在线观看 | 99极品视频 | 看av网址| 精品三区视频 | 日韩大片在线永久观看视频网站免费 | 神秘电影91 | 国产精选91 | 国产精品国产成人国产三级 | 黄色免费电影网址 | 视频毛片 | 精品国产一区二区三区四区在线 | avav在线播放 | 88xx成人永久免费观看 | 看毛片电影 | 亚洲第一精品在线 | 99精品视频在线免费观看 | 中文字幕免费看 | 久久不射电影 |