get和post的區(qū)別
Get請求發(fā)送的文本內(nèi)容大小有限制笆环,而post請求沒有限制
Get請求的請求參數(shù)會出現(xiàn)在url路徑中,而發(fā)送post請求時木人,參數(shù)不會顯示在url路徑中
Get安全系數(shù)較低缩挑,但是效率較高。Post安全系數(shù)較高扎即,但效率較低
Get請求只能發(fā)送字符串吞获,post請求可以提交二進制數(shù)據(jù)
List:1.可以允許重復(fù)的對象。
? 2.可以插入多個null元素谚鄙。
? ? ? ? 3.是一個有序容器各拷,保持了每個元素的插入順序,輸出的順序就是插入的順序闷营。
? ? ? ? 4.常用的實現(xiàn)類有 ArrayList烤黍、LinkedList 和 Vector。ArrayList 最為流行,它提供了使用索引的隨意訪問速蕊,而 LinkedList 則對于經(jīng)常需要從 List 中添加或刪除元素的場合更為合適嫂丙。
Set:1.不允許重復(fù)對象
? 2. 無序容器,你無法保證每個元素的存儲順序互例,TreeSet通過 Comparator? 或者 Comparable 維護了一個排序順序奢入。
? ? ? ? 3. 只允許一個 null 元素
? ? ? ? 4.Set 接口最流行的幾個實現(xiàn)類是 HashSet、LinkedHashSet 以及 TreeSet媳叨。最流行的是基于 HashMap 實現(xiàn)的 HashSet腥光;TreeSet 還實現(xiàn)了 SortedSet 接口,因此 TreeSet 是一個根據(jù)其 compare() 和 compareTo() 的定義進行排序的有序容器糊秆。
1.Map不是collection的子接口或者實現(xiàn)類武福。Map是一個接口。
2.Map 的 每個 Entry 都持有兩個對象痘番,也就是一個鍵一個值捉片,Map 可能會持有相同的值對象但鍵對象必須是唯一的。
3. TreeMap 也通過 Comparator? 或者 Comparable 維護了一個排序順序汞舱。
4. Map 里你可以擁有隨意個 null 值但最多只能有一個 null 鍵伍纫。
5.Map 接口最流行的幾個實現(xiàn)類是 HashMap、LinkedHashMap昂芜、Hashtable 和 TreeMap莹规。(HashMap、TreeMap最常用)
3.什么場景下使用list泌神,set良漱,map呢?
(或者會問為什么這里要用list欢际、或者set母市、map,這里回答它們的優(yōu)缺點就可以了)
答:
1.如果你經(jīng)常會使用索引來對容器中的元素進行訪問损趋,那么 List 是你的正確的選擇患久。如果你已經(jīng)知道索引了的話,那么 List 的實現(xiàn)類比如 ArrayList 可以提供更快速的訪問,如果經(jīng)常添加刪除元素的浑槽,那么肯定要選擇LinkedList蒋失。
2.如果你想容器中的元素能夠按照它們插入的次序進行有序存儲,那么還是 List括荡,因為 List 是一個有序容器,它按照插入順序進行存儲溉旋。
3.如果你想保證插入元素的唯一性畸冲,也就是你不想有重復(fù)值的出現(xiàn),那么可以選擇一個 Set 的實現(xiàn)類,比如 HashSet邑闲、LinkedHashSet 或者 TreeSet算行。所有 Set 的實現(xiàn)類都遵循了統(tǒng)一約束比如唯一性,而且還提供了額外的特性比如 TreeSet 還是一個 SortedSet苫耸,所有存儲于 TreeSet 中的元素可以使用 Java 里的 Comparator 或者 Comparable 進行排序州邢。LinkedHashSet 也按照元素的插入順序?qū)λ鼈冞M行存儲。
4.如果你以鍵和值的形式進行數(shù)據(jù)存儲那么 Map 是你正確的選擇褪子。你可以根據(jù)你的后續(xù)需要從 Hashtable量淌、HashMap、TreeMap 中進行選擇嫌褪。
什么是線程安全?線程安全是怎么完成的(原理)?
線程安全就是說多線程訪問同一代碼呀枢,不會產(chǎn)生不確定的結(jié)果。編寫線程安全的代碼是低依靠線程同步笼痛。