① java 怎麼創建一個list集合
在Java中創建一個List集合,首先需要明確的是,List介面本身是不能直接實例化的,這意味著我們不能直接通過new List()來創建List對象。實際上,我們需要使用List介面的實現類來創建實例。最常用的實現類是ArrayList。
創建List集合的一種方式是:List temp = new ArrayList(); 這行代碼首先聲明了一個List類型的引用temp,然後使用new關鍵字和ArrayList類來創建一個ArrayList實例。
接下來,我們可以向這個集合中添加元素,比如:temp.add("xxx")。這里的"xxx"可以是任何對象,只要符合集合的要求。通過調用add方法,我們可以將這個對象添加到List集合中。
除了ArrayList之外,Java還提供了其他一些實現List介面的類,例如LinkedList和Vector等。不過,使用ArrayList是最常見和推薦的方式。
另一種創建List的方法是直接初始化,例如:List list = new ArrayList(); 這行代碼同樣創建了一個ArrayList實例,並將其賦值給了List類型的變數list。然後,我們可以繼續通過調用list的add方法向集合中添加元素,比如:list.add("1"); list.add("2")。
綜上所述,為了創建一個List集合,我們需要先選擇一個具體的實現類,如ArrayList,並使用new關鍵字實例化它。之後,我們可以通過調用add方法向集合中添加元素。這種方式既簡單又直觀,是Java開發中常用的操作。
② JAVA中的List的使用
List<E>([]內的內容可省略),與數組類似:
實例化:List[<數據類型>] list = new ArrayList[<數據類型>]();
獲得集合內元素個數:list.size();
添加元素:
默認添加:list.add(e);
指定下標添加(添加後下標後的元素向後挪一位):list.add(index,e);
刪除元素:
返回是否刪除:list.remove(e);
直接刪除指定下標的元素(只刪除找到的第一個相符合的元素):list.remove(index);
替換元素(替換掉指定下標的元素):list.set(index,e);
取出元素:list.get(index);
清空集合:list.clear();
判斷集合中是否存在某個元素(存在返回true,不存在返回false):list.contains(e);
對比兩個集合中的所有元素:
兩個對象一定相等:list.equals(list2);
兩個對象不一定相等:list.hashCode() == list2.hashCode();
(兩個相等對象的equals方法一定為true, 但兩個hashcode相等的對象不一定是相等的對象。)
獲得元素下標:
元素存在則返回找到的第一個元素的下標,不存在則返回-1:list.indexOf(e);
元素存在則返回找到的最後一個元素的下標,不存在則返回-1:list.lastIndexOf(e);
判斷集合是否為空(空則返回true,非空則返回false):list.isEmpty();
返回Iterator集合對象:list.iterator();
將集合轉換為字元串:list.toString();
截取集合(從fromIndex開始在toIndex前結束,[fromIndex,toIndex)):list.subList(fromIndex,toIndex);
將集合轉換為數組:
默認類型:list.toArray();
指定類型(objects為指定類型的數組對象,並將轉換好的數組賦值給objects數組):list.toArray(objects);
以上為List常用的方法。
③ java 怎麼創建一個list集合
java創建一個list集合,List是不能直接實例化的,所以要用其他的,如ArrayList
Listtemp=newArrayList();
temp.add(xxx);
④ java中這樣定義一個List: List list = null; 初始化的是什麼ListarrayList還是LinkList
List list = null;
是聲明了一個 變數list 類型是List,但是他指向(或者說是持有)null(空指針)的引用,這時候他什麼都做不了
只有當你給他實例化的時候,如下
list = new ArrayList() 或者 list = new LinkedList()以後,才能確定他究竟是什麼類型
這就是java動態綁定
⑤ java中List的用法盡量詳細解釋,包括例子。
List 集合中的對象按照一定的順序排放,裡面的內容可以重復。
List介面實現的類:ArrayList(實現動態數組), Vector(實現動態數組) ,LinkedList(實現鏈表), Stack(實現堆棧)
一 list介面
1.java.util.ArrayList類實現一個可增長的動態數組,平時用的比較多的就是add()方法,其它方法
請參考API幫助文檔。使用該方法向集合內添加對象,並且這些對象是按照一定的順序排列
的,它內部原理是數組實現的,因此處理數據量較大時,不建議使用。
public class TestArrayList {
public static void main(String[] args) {
//聲明List 並實例化為ArrayList
List al = new ArrayList();
//使用add()方法添加元素
al.add("a");
al.add("b");
al.add("c");
al.add("d");
//使用Iterator迭代器遍歷出集合的元素並列印
for(Iterator i = al.iterator();i.hasNext(); ){
String str = (String) i.next();
System.out.println(str);
}
}
}
3.java.util.Vector(向量)類 與ArrayList類似的也是實現一個動態的數組,該向量可以隨意的增長以存放更多的對象
public class TestArrayList {
public static void main(String[] args) {
//聲明List 並實例化為Vector
List al = new Vector();
//使用add()方法添加對象
al.add("a");
al.add("b");
al.add("c");
al.add("d");
//使用Iterator迭代器遍歷出集合的對象並列印
for(Iterator i = al.iterator();i.hasNext(); ){
String str = (String) i.next();
System.out.println(str);
}
}
}
3.java.util.LinkedList類實現了鏈表,可初始化化為空或者已存在的集合,通常使用以下方法
add();向鏈表末尾添加對象。
addFirst()在鏈表開頭添加對象。
addLast()在鏈表末尾添加對象。
getFirst()得到鏈表開頭的對象。
getLast()得到鏈表末尾的對象。
注意該類提供了隨機訪問列表中的元素的方法,但是底層依然必須遍歷去查找隨機訪問的對象,因此性能依然有限.
public static void main(String[] args) {
//聲明LinkedList並實例化
LinkedList al = new LinkedList();
//使用add()方法添加元素
al.add("a");
al.add("b");
al.add("c");
al.add("d");
//使用Iterator迭代器遍歷出集合的元素並列印
for(Iterator i = al.iterator();i.hasNext(); ){
String str = (String) i.next();
System.out.println(str);
}
System.out.println("_____");
//向鏈表頭和尾分別添加x和z
al.addFirst("z");
al.addLast("x");
//遍歷查看添加後的結果
for(Iterator i = al.iterator();i.hasNext(); ){
String str = (String) i.next();
System.out.println(str);
}
}
4.java.util.Stack類實現了堆棧數據結構,即按照先進後出的原則存放數據。創建時只能為空。
使用push()方法進行添加對象
public static void main(String[] args) {
//聲明Stack並實例化
Stack al = new Stack();
//使用push()方法添加元素
al.push("a");
al.push("b");
al.push("c");
al.push("d");
al.push("f");
//使用Iterator迭代器遍歷出集合的元素並列印
for(Iterator i = al.iterator();i.hasNext(); ){
String str = (String) i.next();
System.out.println(str);
}
}
⑥ java把一個list中的內容添加到另一個list中
在JAVA中,想要把一個list中的內容添加至另一個list中,有兩種方法:
採用循環的方法。通過循環第一個ArrayList,然後通過每循環一次的方式,將值賦值給另一個ArrayList。具體代碼實現如下:
2.集合是Java API所提供的一系列類,可以用於動態存放多個對象。集合與數組的不同在於,集合是大小可變的序列,而且元素類型可以不受限定,只要是引用類型。集合中不能放基本數據類型,但可以放基本數據類型的包裝類。 集合類全部支持泛型,是一種數據安全的用法。java列表是集合的一種,並且列表中的元素是有序的,且允許重復。java列表又稱為java list。