資料可重複,不排序,執行緒不安全
下面這個例子是將集合中的重複元素去掉:
/**
* a:案例演示
* 需求:arraylist去除集合中字串的重複值(字串的內容相同)
* 思路:建立新集合方式
*/public static void main(string args)
/** 去除重複
* 1,返回arraylist
* 2,引數列表arraylist
*/public static arraylist getsingle(arraylist list)
}return newlist; //將新集合返回
}
上面是對基本資料型別這樣做事可以的,但是對於複雜資料型別就不可以了。contains的底層使用的是equals方法進行兩個元素比較的,但是兩個物件的使用equals進行比較的是位址值,所以永遠都是不相同的。無法取出相同元素物件;
解決方案:物件重寫equals方法,內部進行比較物件的屬性值就可以判斷是否相同元素了;
在arrays中有個aslist();可以將陣列轉換成集合,但是這個集合是不可以增加的;就是簡單的使用集合的思想去運算元組而已;
集合巢狀,使用for迴圈簽到遍歷輸出即可;
* public void addfirst(e e)及addlast(e e)
* public e getfirst()及getlast()
* public e removefirst()及public e removelast()
* public e get(int index);
public static void main(string args)
鍊錶查詢慢,上面的get方法中是折半查詢的;
* 棧: 先進後出
* 佇列:先進先出
需求:請用linkedlist模擬棧資料結構的集合,並測試
public class stack
public object out()
public boolean isempty()
}
第一:普通的for迴圈遍歷
arraylistlist = new arraylist<>();
list.add("a");
list.add("b");
list.add("b");
list.add("c");
list.add("d");
//1,普通for迴圈刪除,索引要--
for(int i = 0; i < list.size(); i++)
}
第二:
arraylistlist = new arraylist<>();
list.add("a");
list.add("b");
list.add("b");
list.add("c");
list.add("d");
iteratorit = list.iterator();
while(it.hasnext())
}
第三:直接撥錯;底層使用的也是迭代器;
//3,增強for迴圈,增強for迴圈不能刪除,只能遍歷
for (string string : list)
}
JAVA集合體系整理彙總
乙個是以map介面為延伸 乙個是以collection介面延伸 1.1 map介面向下延伸,又分為兩大類 一 hashmap 底層鍵值對 key value 執行緒不安全,同理效率高 無序的 二 hashtable 底層鍵值對 key value 執行緒安全,同理效率低 無序的 三 treemap ...
Map 集合體系
map 集合體系 1 特點 map是map集合體系的根介面 1 鍵值對儲存 key value 乙個鍵值對對應map集合中的乙個元素 2 鍵 無序 無下標元素不允許重複 3 值 無序無下標 元素允許重複 常用方法 1 put k key,v value 往map集合中新增乙個鍵值對,如果map沒有存...
java基礎重要知識 集合體系
集合體系 一.單列集合 collection collection 以單個元素形式儲存 list集合 有序,有索引,可重複 arraylist 陣列結構,查詢快,增刪慢 增加 add e e 將指定的元素追加到此列表的末尾 刪除 remove int index 刪除該集合中指定位置的元素 remo...