生活随笔
收集整理的這篇文章主要介紹了
Java——集合框架(List)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
集合框架(List的三個子類的特點)
A:List的三個子類的特點
ArrayList:
底層數據結構是數組,查詢快,增刪慢。
線程不安全,效率高。
Vector:
底層數據結構是數組,查詢快,增刪慢。
線程安全,效率低。
Vector相對ArrayList來說 查詢慢(線程安全)
Vector相對LinkedList來說,增刪慢(數組結構)
LinkedList:
底層數據結構是鏈表,查詢慢,增刪快。
線程不安全,效率高。
Vector和ArrayList的區別
Vector是線程安全的,效率低
ArrayList是線程不安全的,效率高
共同點:都是數組實現的
ArrayList和LinkedList的區別
ArrayList底層是數組結構,查詢和修改快
LinkedList底層是鏈表結構,增和刪比較快,查詢和修改比較慢
共同點:都是線程不安全的
- B:List有三個兒子,
當查詢多的時候,用ArrayList
增刪多的時候,用LinkedList
如果查詢、增刪都多的時候,用ArrayList
package com.wsq.bean;
public class Student {private String name;
private int age;
public Student() {
super();}
public Student(String name,
int age) {
super();
this.name = name;
this.age = age;}
public String
getName() {
return name;}
public void setNaem(String name) {
this.name = name;}
public int getAge() {
return age;}
public void setAge(
int age) {
this.age = age;}
@Overridepublic String
toString() {
return "Student [naem=" + name +
", age=" + age +
"]";}
}
package com.wsq.collection;
import com.wsq.bean.Student;
public class Demo_array {
public Demo_array() {}
public static void main(String[] args) {Student [] arr =
new Student [
5];arr[
0] =
new Student(
"張三",
23);arr[
1] =
new Student(
"李四",
24);arr[
2] =
new Student(
"王五",
25);
for(
int i =
0;i<arr.length;i++){System.
out.println(arr[i]);}}
}
package
com.wsq.collection
import java
.util.ArrayList
import java
.util.Collection
import
com.wsq.bean.Student
public class Demo2_Collection {@SuppressWarnings(
"unchecked")public static void main(String[] args) {@SuppressWarnings(
"rawtypes")Collection c = new ArrayList()c
.add(
"a")c
.add(
"b")c
.add(
"c")c
.add(
"d")c
.remove(
"b")System
.out.println(c)}public static void demo1(){Collection c = new ArrayList()boolean b1 = c
.add(
"abc")boolean b2 = c
.add(true)boolean b3 = c
.add(
100)boolean b4 = c
.add(new Student(
"張三",
23))boolean b5 = c
.add(
"abc")System
.out.println(b1)System
.out.println(b2)System
.out.println(b3)System
.out.println(b4)System
.out.println(b5)System
.out.println(c
.toString())}
}
package com.wsq.collection;
import java.util.ArrayList;
import java.util.Collection;
import com.wsq.bean.Student;
public class Demo3_Collection {public static void main(String[] args) {Collection c =
new ArrayList();c.add(
new Student(
"張三",
23));c.add(
new Student(
"李四",
24));c.add(
new Student(
"王五",
25));c.add(
new Student(
"趙六",
26));Object [] arr = c.toArray();
for (
int i =
0; i < arr.length; i++) {Student s = (Student)arr[i];System.out.println(s.getName() +
"..." + s.getAge());}}
public static void demo1(){Collection c =
new ArrayList();c.add(
"a");c.add(
"b");c.add(
"c");c.add(
"d");Object[] arr = c.toArray();
for(
int i=
0;i<arr.length;i++){System.out.println(arr[i]);} }
}
package
com.wsq.collection
import java
.util.ArrayList
import java
.util.Collection
public class Demo4_CollectionAll {public static void main(String[] args) {//demo1()//demo2()//demo3()Collection c1 = new ArrayList()c1
.add(
"a")c1
.add(
"b")c1
.add(
"c")c1
.add(
"d")Collection c2 = new ArrayList()c2
.add(
"a")c2
.add(
"b")c2
.add(
"c")c2
.add(
"d")//取交集,如果調用的集合改變就返回true,如果調用的集合不變就返回falseboolean b = c1
.retainAll(c2)System
.out.println(b)System
.out.println(c1)}public static void demo1(){Collection c1 = new ArrayList()c1
.add(
"a")c1
.add(
"b")c1
.add(
"c")c1
.add(
"d")Collection c2 = new ArrayList()c2
.add(
"a")c2
.add(
"b")c2
.add(
"c")c2
.add(
"d")//c1
.addAll(c2)c1
.add(c2)System
.out.println(c1)}public static void demo2(){Collection c1 = new ArrayList()c1
.add(
"a")c1
.add(
"b")c1
.add(
"c")c1
.add(
"d")Collection c2 = new ArrayList()c2
.add(
"a")c2
.add(
"b")c2
.add(
"z")boolean b = c1
.removeAll(c2)System
.out.println(b)System
.out.println(c1)}public static void demo3(){Collection c1 = new ArrayList()c1
.add(
"a")c1
.add(
"b")c1
.add(
"c")c1
.add(
"d")Collection c2 = new ArrayList()c2
.add(
"a")c2
.add(
"b")c2
.add(
"z")boolean b = c1
.containsAll(c2)System
.out.println(b)}
}
package
com.wsq.collection
import java
.util.ArrayList
import java
.util.Collection
import java
.util.Iterator
import
com.wsq.bean.Student
public class Demo5_Iterator {public static void main(String[] args) {Collection c = new ArrayList()c
.add(new Student(
"張三",
23))c
.add(new Student(
"李四",
24))c
.add(new Student(
"王五",
25))c
.add(new Student(
"趙六",
26))//獲取迭代器Iterator it = c
.iterator()while(it
.hasNext()){//System
.out.println(it
.hasNext())Student s = (Student)it
.next()System
.out.println(s
.getName() +
"..." + s
.getAge())}}public static void demo1(){Collection c = new ArrayList()c
.add(
"a")c
.add(
"b")c
.add(
"c")c
.add(
"d")//對集合中的元素迭代(遍歷)Iterator it = c
.iterator()while(it
.hasNext()){System
.out.println(it
.next())}}
}
package com.wsq.
list;
import java.util.
List;
import java.util.ArrayList;
public class Demo1_LIst {public static void main(String[] args) {
List list =
new ArrayList();
list.add(
"a");
list.add(
"b");
list.add(
"c");
list.add(
"d");
list.set(
1,
"z"); System.out.println(
list);}
public static void demo1(){
List list =
new ArrayList();
list.add(
"a");
list.add(
"b");
list.add(
"c");
list.add(
"d");
list.add(
4,
"f");System.out.println(
list);}
public static void demo2(){
List list =
new ArrayList();
list.add(
"a");
list.add(
"b");
list.add(
"c");
list.add(
"d");Object obj =
list.remove(
1); System.out.println(obj);System.out.println(
list); }
public static void demo3(){
List list =
new ArrayList();
list.add(
111);
list.add(
222);
list.add(
333);
list.remove(
111); System.out.println(
list); }
public static void demo4(){
List list =
new ArrayList();
list.add(
"a");
list.add(
"b");
list.add(
"c");
list.add(
"d");
for (int i =
0; i <
list.size(); i++) {System.out.println(
list.get(i));}}}
package
com.wsq.list
import java
.util.Enumeration
import java
.util.Vector
public class Demo2_Vector {public static void main(String[] args) {Vector wsq = new Vector()wsq
.addElement(
"a")wsq
.addElement(
"b")wsq
.addElement(
"c")wsq
.addElement(
"d")Enumeration yy = wsq
.elements()while(yy
.hasMoreElements()){System
.out.println(yy
.nextElement())}}
}
package
com.wsq.list
import java
.util.ArrayList
import java
.util.List
import java
.util.ListIterator
public class Demo4_ListIterator {public static void main(String[] args) {List list = new ArrayList()list
.add(
"a")list
.add(
"b")list
.add(
"world")list
.add(
"d")list
.add(
"e")ListIterator lit = list
.listIterator()while(lit
.hasNext()){ System
.out.println(lit
.next())}System
.out.println(
"-------------------------")while(lit
.hasPrevious()){System
.out.println(lit
.previous())}}
}
總結
以上是生活随笔為你收集整理的Java——集合框架(List)的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。