日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

List------数据结构

發(fā)布時間:2023/12/8 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 List------数据结构 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.Collection與Collections的區(qū)別?

?1)Collection是一個集合接口。它提供了對集合對象進(jìn)行基本操作的通用接口方法。實現(xiàn)該接口的類主要有List和Set,該接口的設(shè)計目標(biāo)是為了各種具體的集合提供最大化的統(tǒng)一的操作方式。
? 2)Collections是針對集合類的一個包裹類,它提供了一系列靜態(tài)方法實現(xiàn)對各種集合的搜索、排序以及線程安全化等操作

reverse(List list):反轉(zhuǎn)list中的順序,sort(List list):對list中的順序進(jìn)行自然排序,升序

List<Integer> list=new ArrayList<>();System.out.println(list); list.add(1);list.add(2);list.add(3);Collections.swap(list,1,2);

2.object的常見方法

clone(),toString(),equals(),hashcode(),wait,notify(),notifyAll()

1)實現(xiàn)了listIterator接口和Iterator接口,可以用迭代器來進(jìn)行打印;

List<String> list=new ArrayList<>();list.add("123");list.add("456");list.add("hello");ListIterator<String> sb=list.listIterator();while(sb.hasNext()){System.out.println(sb.next());} 我們也可以通過for循環(huán)的方式或者for each的方式來進(jìn)行打印List<String> list=new ArrayList<>();list.add("123");list.add("456");list.add("789");for(String x:list){System.out.println(x);}System.out.println(list);for(int i=0;i<list.size();i++){System.out.println(list.get(i));}

2)我們在使用remove()方法的時候要注意什么?

List<String> list=new ArrayList<>();list.add("abc");list.add("cde");list.add("hello");Iterator<String> it= list.iterator();while(it.hasNext()){it.remove();//這么使用IllegalException異常,因為此時it沒有進(jìn)行調(diào)用任何next()方法,此時it的指向是空System.out.println(it.next());} //上面寫法錯誤 while(it.hasNext()) {String ret= it.next();//先進(jìn)行獲取到第一個元素if(ret.equals("hello")){it.remove();}else{System.out.println(it.next());} }

?其實本質(zhì)上來說?ListIterator接口也實現(xiàn)了Iterator接口

Iterator和ListIterator主要區(qū)別有:
一、ListIterator有add()方法(這個add方法會自動放到add(A),就是放到A的后面),remove()方法,可以向List中添加對象,而Iterator不能。

二、ListIterator和Iterator都有hasNext()和next()方法,可以實現(xiàn)順序向后遍歷。但是ListIterator有hasPrevious()和previous()方法,可以實現(xiàn)逆向(順序向前)遍歷。Iterator就不可以。也就是說Iterator是單向的,而ListIterator是雙向的。IListIterator繼承自Iterator。

while(it.hasPrevious()){ String str = it.previous(); System.out.print(str+” "); }

三、都可實現(xiàn)刪除對象,但是ListIterator可以實現(xiàn)對象的修改,set()方法可以實現(xiàn)。Iterator僅能遍歷,不能修改。因為ListIterator的這些功能,可以實現(xiàn)對LinkedList等List數(shù)據(jù)結(jié)構(gòu)的操作。

注意:

hasNext() :此方法用來判斷迭代器對象指向的索引位置有沒有元素

next() :獲取迭代器對象當(dāng)前索引位置的元素并將索引下標(biāo)移至下一個元素

3)在調(diào)用remove()方法的時候,搭配迭代器進(jìn)行使用的時候,應(yīng)先通過next()方法來進(jìn)行獲取到迭代器中的元素,再根據(jù)我們所指定的條件進(jìn)行刪除,否則上面的代碼可能會出現(xiàn)java.lang.lllegalStateException異常

boolean add---->進(jìn)行尾插,List的add()方法是默認(rèn)放到數(shù)組最后一個位置 add(int index,E element),把E插到index位置,把其他的元素都挪開 boolean addAll(Collection<? extends E> c)尾插c中的元素,放一個List E remove(int index) 刪除index位置的元素 boolean remove(Object o) 刪除第一次出現(xiàn)的o E get(int index)找到index位置的元素 E set(int index,E element) 將下標(biāo)index位置元素設(shè)置成element,返回值是原來的元素 void clear()清空,遍歷數(shù)組元素一個一個置為空,然后數(shù)組長度變成空 boolean contains(Object o)判斷元素o是否在線性表中 int indexOf(Object o) 返回第一個o所在的下標(biāo) int latIndexOf(Object o)返回最后一個o所在的下標(biāo) List subList(int fromindex,int toindex)進(jìn)行截取,返回的是一個新的List

說明:

ArrayList實現(xiàn)了RandomAccess接口,表明ArrayList支持隨機(jī)訪問
ArrayList實現(xiàn)了Cloneable接口,表明ArrayList是可以clone的
ArrayList實現(xiàn)了Serializable接口,表明ArrayList是支持序列化的(把一個對象轉(zhuǎn)化成字符串)
ArrayList不是線程安全的,在單線程下可以使用
ArrayList底層是一段連續(xù)的空間,并且可以動態(tài)擴(kuò)容,是一個動態(tài)類型的順序表
ArrayList中插入或刪除一個元素需要移動其他元素,所以不適合在插入和刪除操作頻繁的場景下使用

public static void main(String[] args) {List<String> list=new ArrayList<>();list.add("hello");list.add("world");list.add("生命在與運(yùn)動");ListIterator<String> iterator= list.listIterator();while(iterator.hasNext()){String str=iterator.next();if(str.equals("hello")){iterator.add("lijiawei");}else{System.out.println(str);}}System.out.println(list);} 打印結(jié)果:world 生命在與運(yùn)動 [hello, lijiawei, world, 生命在與運(yùn)動] 但是如果說代碼改成這樣: import java.util.ArrayList; import java.util.List; import java.util.ListIterator;public class Test {public static void main(String[] args) {List<String> list=new ArrayList<>();list.add("hello");list.add("world");list.add("生命在與運(yùn)動");ListIterator<String> iterator= list.listIterator();while(iterator.hasNext()){String str=iterator.next();if(str.equals("hello")){list.add("lijiawei");}else{System.out.println(str);}}System.out.println(list);} } 程序會出現(xiàn)報錯:Exception in thread "main" java.util.ConcurrentModificationException

當(dāng)我們將ArrayList換成CpoyOnWriteArrayList上面的報出異常的錯誤代碼就不會報錯

1)add方法(int index,E element)

1.1)先進(jìn)行檢查下標(biāo)的合法性,通過調(diào)用rangeCheckForAdd(index)方法

1.2)index合法之后,再進(jìn)行確認(rèn)一下真實的容量

1.3)在進(jìn)行調(diào)用System.arraycpoy方法對數(shù)字進(jìn)行拷貝,移動元素

1.4)存放index元素(array[index]=element,index++)

public void add(int index, E element) {rangeCheckForAdd(index);//1.先進(jìn)行檢查下標(biāo)合法性ensureCapacityInternal(size + 1); //2.檢查容量System.arraycopy(elementData, index, elementData, index + 1,size - index);//3.拷貝元素,增加的話向數(shù)組后面進(jìn)行拷貝elementData[index] = element;//4存放元素size++;}

2)add(E element)

先進(jìn)行確認(rèn)容量,再將增加的元素放到最后一個位置

public boolean add(E e) {ensureCapacityInternal(size + 1); //確定是否進(jìn)行擴(kuò)容elementData[size++] = e;return true;}

3)E e=remove(int index)

3.1)先把你要刪除的元素進(jìn)行存儲

3.2)計算要移動的元素個數(shù),移動元素

3.3)最后一個位置置空

public E remove(int index) {rangeCheck(index);//先進(jìn)行檢查元素的范圍modCount++;E oldValue = elementData(index);//保存你要進(jìn)行刪除的元素,方便后面進(jìn)行返回int numMoved = size - index - 1;//計算要進(jìn)行移動的元素個數(shù)if (numMoved > 0)System.arraycopy(elementData, index+1, elementData, index,numMoved);//調(diào)用這個方法進(jìn)行移動元素elementData[--size] = null; // clear to let GC do its work//將最后一個位置置為空return oldValue;}

4)remove(E element)刪除具體的元素:元素是空也讓你刪

public boolean remove(Object o) {if (o == null) {for (int index = 0; index < size; index++)if (elementData[index] == null) {fastRemove(index);return true;}} else {for (int index = 0; index < size; index++)if (o.equals(elementData[index])) {fastRemove(index);return true;}}return false;}

5)get方法:

public E get(int index) {rangeCheck(index);//先進(jìn)行檢查數(shù)組的下標(biāo)是否合法return elementData(index);//在進(jìn)行取出元素返回}E elementData(int index) {return (E) elementData[index];}//自動轉(zhuǎn)化成E類型

6)sublist方法:直接截取對應(yīng)的下標(biāo)的地址給新的List

public static void main(String[] args) {List<String> list=new ArrayList<>();list.add("a");list.add("b");list.add("c");list.add("d");List<String> arraylist=list.subList(1,3);System.out.println("_______________________");arraylist.set(1,"l");System.out.println(list);System.out.println(arraylist);} 打印結(jié)果是: [a, b, l, d] [b, l]

4)ArrayLIst的擴(kuò)容機(jī)制

1)當(dāng)new ArrayList<>()沒有指定容量大小的時候,底層雖然是數(shù)組,但是數(shù)組的大小是0;

2)當(dāng)?shù)谝淮蝍dd的時候,整個順序表的長度才變成了10,當(dāng)這10個位置放滿了之后,就開始進(jìn)行擴(kuò)容,每次以當(dāng)前長度1.5倍進(jìn)行擴(kuò)容

3)如果當(dāng)前在構(gòu)造方法中指定容量,那么順序表的大小就是給定容量的大小,如果放滿了,還是以1.5倍進(jìn)行擴(kuò)容;

4)List的ToString方法是實現(xiàn)在AbstractCollcetion里面的

5)ArrayList的構(gòu)造方法

1)ArrayLIst();無參數(shù)進(jìn)行構(gòu)造?

2)ArrayList(Collection <? extends E> c)利用其它的Collection來對ArrayList來進(jìn)行構(gòu)造

3)ArrayList(int index),根據(jù)順序表來進(jìn)行指定容量

List<String> list1=new ArrayList<>(); list1.add("123"); list1.add("456"); List<String> list2=new ArrayList<>(list1); System.out.println(list2); tolowerCase是返回了一個新的對象,java中由編譯器自動導(dǎo)入,而不需要手動import導(dǎo)入的包是java.lang,以.java為后綴的源文件,只能有一個與源文件相同的類,可以包含其他類;

現(xiàn)在我們來進(jìn)行實現(xiàn)一個ArrayList:

練習(xí)題一:輸入:str1=abcqweracb 輸出:abcqwer

1)先創(chuàng)建出一個StringBuilder對象,再進(jìn)行遍歷str這個字符串里面的字符,如果里面有str1中的字符,就不會進(jìn)行拼接,如果沒有,就進(jìn)行拼接;但是仍然要注意一個事情,2)StringBuilder沒有contains方法,contains方法里面的內(nèi)容必須是字符串

3)這是不能夠使用HashSet的,因為要按照字母的順序來進(jìn)行輸出

4)我們利用哈希的思想,我們定義一個找整型數(shù)組,來進(jìn)行標(biāo)記這個字符是否出現(xiàn)過,出現(xiàn)過就把它對應(yīng)的下標(biāo)的值變成1,下次同樣的字符來了之后,只要不是0就不是我想要的

5)因為題目中給的都是大寫字母和小寫字母,ASCILL碼表范圍就是65-122

  • hasNext()方法會判斷接下來是否有非空字符.如果有,則返回true,否則返回false
  • hasNextLine()?方法會根據(jù)行匹配模式去判斷接下來是否有一行(包括空行),如果有,則返回true,否則返回false
  • 比如前面用hasNextLine(),那么后面要用?nextLine()?來處理輸入;
public static void main(String[] args) {Scanner scan=new Scanner(System.in);String str=scan.next();StringBuilder sb=new StringBuilder();for(int i=0;i<str.length();i++){ char ch=str.charAt(i);if(!sb.toString().contains(ch+"")){sb.append(ch);}}System.out.println(sb.toString());}

1)這個題本質(zhì)上就是一個去重操作 ,這里面的數(shù)組下表就相當(dāng)于是字符對應(yīng)的ASCILL碼表,數(shù)組下標(biāo)的值就相當(dāng)于這個元素出現(xiàn)了幾次

2)我們遍歷這個字符串,如果發(fā)現(xiàn)他的數(shù)組下表對應(yīng)的元素是0,那么直接拼接到

3)stringBuilder里面,并將數(shù)組下標(biāo)的值進(jìn)行加加

不是0那么說明之前出現(xiàn)過,就不用管了

public static void main(String[] args) {Scanner scan=new Scanner(System.in);String str= scan.next();StringBuilder builder=new StringBuilder();int[] array=new int[58];for(int i=0;i<str.length();i++){char ch=str.charAt(i);if(array[ch-65]==0){//說明此時是第一次出現(xiàn)builder.append(ch);array[ch-65]=1;}else{array[ch-65]++;}}System.out.println(builder);}

?練習(xí)題二:一個學(xué)校中有若干學(xué)生(學(xué)生對象放在一個List中,每一個學(xué)生有一個姓名,班級,和考試成績的屬性,某次考試成績結(jié)束之后,每一個學(xué)生都獲得了一個考試成績.遍歷List集合,把每一個學(xué)生對象的屬性都打印出來;

List是可以存放自定義類型的 class Student{String name;String classes;double score;public Student(String name, String classes, double score) {this.name = name;this.classes = classes;this.score = score;}@Overridepublic String toString() {return "Student{" +"name='" + name + '\'' +", classes='" + classes + '\'' +", score=" + score +'}';} } class test {public static void main(String[] args) {List<Student> list=new ArrayList<>();list.add(new Student("bit1","java100",90.3));list.add(new Student("bit2","java101",100.5));list.add(new Student("bit3","java102",31.7));System.out.println(list);}

List<String> list1=new ArrayList<>();

ArrayList<String> list2=new ArrayList<>();

上面兩種方法有什么區(qū)別呢?

1)此時list1可使用的方法沒有l(wèi)ist2可使用的方法多,當(dāng)借口引用引用實例化對象的時候,只能調(diào)用接口中特有的方法,不能調(diào)用ArrayList本身包含的(特有的方法)

2)也就是說父類引用引用子類對象,只能通過父類引用調(diào)用我們父類自己的方法(除非重寫),不能調(diào)用子類的

練習(xí)題三:刪除第一個字符串中出現(xiàn)的第二個字符串中的字符;例如 String str1=" welcome to bit"; String str2="come" 輸出的結(jié)果是wl t bit

我們可以使用一個集合類list來進(jìn)行操作,我們使用for循環(huán)進(jìn)行循環(huán)遍歷str1中的字符串中的字符,如果str2不包含著這個字符,那么就可以把這個放到List中,最終打印我的這個List即可

在這里面我們要注意一個事情,contains(里面放的是字符串類型而不是字符類型) String str1="welcome to bit";String str2="come";ArrayList<Character> list=new ArrayList<>();for(int i=0;i<str1.length();i++){ char ch=str1.charAt(i);if(!str2.contains(ch+"")){list.add(ch);}}System.out.println(list);} //我們在這里面直接進(jìn)行遍歷str1中的字符串的字符,如果這個字符在str2中出現(xiàn)過,那么就進(jìn)行舍棄,否則直接拼接到StringBulider里面public static void main(String[] args) {String str1="welcome to bit";String str2="come";StringBuilder stringBuiler=new StringBuilder();for(int i=0;i<str1.length();i++){char ch=str1.charAt(i);if(!str2.contains(ch+"")){stringBuiler.append(ch);}}System.out.println(stringBuiler.toString());}

練習(xí)題四:有一個List當(dāng)前存放的是整形的數(shù)據(jù),運(yùn)用Collections.sort對list進(jìn)行排序

ArrayList<Integer> list=new ArrayList<>();list.add(10);list.add(11);list.add(7);Collections.sort(list);System.out.println(list);

練習(xí)題五:實現(xiàn)一個撲克牌的功能

構(gòu)建一副撲克牌:每一張牌是由數(shù)字和花色構(gòu)成的

揭牌:

1)一張撲克牌就是一個對象,我們使用Card對象來進(jìn)行描述一張牌,那么一副牌我們就用一個ArrayList來進(jìn)行表示

2)我們在進(jìn)行創(chuàng)建一個類,通過BuyCard方法來進(jìn)行買一符牌,生成一副牌,我們還要創(chuàng)建一個List表來存放所有的撲克牌

3)洗牌的過程:假設(shè)我有100張牌,我想洗最后一張牌,就隨機(jī)生成前面的一張牌進(jìn)行交換,我從后面向前面進(jìn)行遍歷,我可以Random random=new Random();

從數(shù)組的最后一個位置開始逐漸向前遍歷,現(xiàn)在得到位置是index,就隨機(jī)生成0-index數(shù)組下標(biāo)的牌進(jìn)行交換

int index=random.nextInt(100),我想辦法生成一個0-100的下標(biāo),將這個100的下標(biāo)與前面的牌進(jìn)行交換;

4)如果從前面向后進(jìn)行交換,后面下標(biāo)的值是沒有辦法確定的

nextInt(a)----->[0,a]

class Card{private int rank;private String suit;public Card(int rank,String suit){this.rank=rank;this.suit=suit;}public String toString(){return "[數(shù)值是"+rank+" "+"花色是"+suit+"]";}} class Box{private static final String[] suits={"?","?","?","?"};public static List<Card> BuyCard(){ List<Card> desk=new ArrayList<>();//我們接下來想用兩層循環(huán)做到每一個花色生成13張牌for(int i=0;i<4;i++)//外層循環(huán)表示花色,i是可以從0下標(biāo)開始進(jìn)行的,因為他這個下標(biāo)的意義是去除數(shù)組里面的元素{for(int j=1;j<=13;j++)//內(nèi)層循環(huán)循環(huán)每一種花色的數(shù)字{String suit=suits[i];int rank=j;Card card=new Card(rank,suit);desk.add(card);//設(shè)置屬性,構(gòu)造牌,并把排放到list里面}}return desk;}//下一個方法我們要進(jìn)行洗牌,使用洗牌的這個方法的時候,我們要把List傳遞過去 才可以進(jìn)行正式的洗牌public static void xipai(List<Card> desk){ int len=desk.size();for(int i=len-1;i>0;i--){Random random=new Random();int index=random.nextInt(i);swap(desk,index,i);}}public static void swap(List<Card> list,int index,int i){Card temp=list.get(i);list.set(i,list.get(index));list.set(index,temp);} }public static void main(String[] args) { //下面是測試方法TestDemo demo=new TestDemo();List<Card> list=demo.BuyCards();demo.xipai(list);System.out.println(list);}

在下面我們還要實現(xiàn)揭牌和玩牌的操作

1)一共有三個人,每一個人要輪流揭5張牌,我們把每一個人所揭的牌都放到一個List數(shù)組里面

2)我們在實現(xiàn)一個List<List<card>>來方便進(jìn)行管理

4)拿到Box里面的牌,調(diào)用remove(0)方法即可,就可以移除張牌了,因為每一個人揭一張牌,就相當(dāng)于刪掉了一張牌,況且我們每一次進(jìn)行揭牌的時候,都是拿的最上面的一張牌,也就是0下標(biāo)的牌

List<Card> list=Box.BuyCard();System.out.println("開始進(jìn)行買牌");System.out.println("開始進(jìn)行洗牌");Box.xipai(list);System.out.println("開始進(jìn)行玩牌和揭牌");List<Card> hand1=new ArrayList<>();//第一個人揭的牌就放在這個list數(shù)組里面List<Card> hand2=new ArrayList<>();//第二個人揭的牌就放在這個list數(shù)組里面List<Card> hand3=new ArrayList<>();//第三個人揭的牌就放在這個list數(shù)組里面List<List<Card>> fatherList=new ArrayList<>();//一會揭牌的時候看看該輪到那個人進(jìn)行揭牌了hand.add(hand1);hand.add(hand2);hand.add(hand3);for(int i=0;i<5;i++)//三個人論流揭牌5張{for(int j=0;j<3;j++){Card card=list.remove(i);fatherList.get(j).add(card);}}System.out.println("第一個人的牌"+hand1);System.out.println("第二個人的牌"+hand2);System.out.println("第三個人的牌"+hand3);System.out.println("剩下的牌"+list);} //上面的循環(huán)不可以寫成這樣 for(int i=0;i<3;i++){ for(int j=0;j<5;j++){ } } //這就表示每一個人一下子揭5張牌

?練習(xí)題六:實現(xiàn)一個楊輝三角

1 1 2 1 1 3 3 1 1 4 6 4 1 arr1[i][j]=arr1[i-1][j-1]+arr1[i-1][j],我們可以把每一行看成一個List

class Solution{

public List<List<Integer>> generate(int numrows){

}?

先以數(shù)組的方式來進(jìn)行計算arr1[i][j]=arr1[i][j-1]+arr1[i][j]

我們計算的下標(biāo)都是按照0來進(jìn)行計算的

public static void main(String[] args) {Scanner scanner=new Scanner(System.in);int n= scanner.nextInt();List<List<Integer>> ret=new ArrayList<>();List<Integer> list1=new ArrayList<>();//1我們先進(jìn)行處理第一行l(wèi)ist1.add(1);ret.add(list1);//到這里面我們才處理完楊輝三角的第一行for(int i=1;i<n;i++)//現(xiàn)在外層循環(huán)用來處理每一行{//每一行的第一個數(shù)字都是1,所以下面處理的是每一行的第一個數(shù)字List<Integer> list=new ArrayList();list.add(1);List<Integer> prev=ret.get(i-1);for(int j=1;j<i;j++){int num=prev.get(j)+prev.get(j-1);list.add(num);}//處理每一行的結(jié)尾list.add(1);ret.add(list);}System.out.println(ret);}

如何實現(xiàn)對List集合進(jìn)行去重?

1)自定義去重:我們在這里面使用兩個數(shù)組

通過循環(huán)判斷當(dāng)前的元素是否存在多個,如果存在多個那么刪除此重復(fù)項

注意這里面的contains方法默認(rèn)比較的是地址,也就是看是否指向同一個對象,“使用 List的contains方法用于判斷對象是否存在于列表中

import java.util.ArrayList; import java.util.Iterator; import java.util.List;public class HelloWorld {static class Student{public String username;public int age;public Student(String username, int age) {this.username = username;this.age = age;}@Overridepublic String toString() {return "Student{" +"username='" + username + '\'' +", age=" + age +'}';}@Overridepublic boolean equals(Object obj) {Student o=(Student)obj;return (this.age==o.age)&&(this.username==o.username);}}public static void main(String[] args) {List<Student> list=new ArrayList<>();Student student1=new Student("李佳偉",10);Student student2=new Student("李嘉欣",11);Student student3=new Student("李嘉誠",12);Student student4=new Student("李佳偉",10);list.add(student1);list.add(student2);list.add(student3);list.add(student4);Iterator<Student> It=list.iterator();List<Student> newList=new ArrayList<>(list.size());while(It.hasNext()){Student student= It.next();if(!newList.contains(student)){//如果新集合中不存在,就進(jìn)行添加newList.add(student);}}System.out.println(newList);} }

2)使用HashSet來進(jìn)行去重,但是元素的順序發(fā)生了變化,所以可以使用LinkedHashSet來進(jìn)行去重,注意我們在這里面需要重寫hashcode和equals方法,否則會導(dǎo)致去重失敗

import java.util.*;public class HelloWorld {static class Student{public String username;public int age;public Student(String username, int age) {this.username = username;this.age = age;}@Overridepublic String toString() {return "Student{" +"username='" + username + '\'' +", age=" + age +'}';}@Overridepublic int hashCode() {return Objects.hash(username, age);}@Overridepublic boolean equals(Object obj) {Student o=(Student)obj;return (this.age==o.age)&&(this.username==o.username);}}public static void main(String[] args) {List<Student> list=new ArrayList<>();Student student1=new Student("李佳偉",10);Student student2=new Student("李嘉欣",11);Student student3=new Student("李嘉誠",12);Student student4=new Student("李佳偉",10);list.add(student1);list.add(student2);list.add(student3);list.add(student4);Iterator<Student> It=list.iterator();LinkedHashSet<Student> set=new LinkedHashSet<>();while(It.hasNext()){Student student= It.next();set.add(student);}System.out.println(set);} }

3)看看首次出現(xiàn)的位置和最后出現(xiàn)的位置是否相同:

import java.util.*;public class HelloWorld {static class Student{public String username;public int age;public Student(String username, int age) {this.username = username;this.age = age;}@Overridepublic String toString() {return "Student{" +"username='" + username + '\'' +", age=" + age +'}';}@Overridepublic int hashCode() {return Objects.hash(username, age);}@Overridepublic boolean equals(Object obj) {Student o=(Student)obj;return (this.age==o.age)&&(this.username==o.username);}}public static void main(String[] args) {List<Student> list=new ArrayList<>();Student student1=new Student("李佳偉",10);Student student2=new Student("李嘉欣",11);Student student3=new Student("李嘉誠",12);Student student4=new Student("李佳偉",10);list.add(student1);list.add(student2);list.add(student3);list.add(student4);Iterator<Student> It=list.iterator();while(It.hasNext()){Student student=It.next();if(list.indexOf(student)!=list.lastIndexOf(student)){It.remove();}}System.out.println(list);} }

4)使用JAVA8的新特性Stream進(jìn)行去重:

import java.util.*; import java.util.stream.Collectors;public class HelloWorld {static class Student{public String username;public int age;public Student(String username, int age) {this.username = username;this.age = age;}@Overridepublic String toString() {return "Student{" +"username='" + username + '\'' +", age=" + age +'}';}@Overridepublic int hashCode() {return Objects.hash(username, age);}@Overridepublic boolean equals(Object obj) {Student o=(Student)obj;return (this.age==o.age)&&(this.username==o.username);}}public static void main(String[] args) {List<Student> list=new ArrayList<>();Student student1=new Student("李佳偉",10);Student student2=new Student("李嘉欣",11);Student student3=new Student("李嘉誠",12);Student student4=new Student("李佳偉",10);list.add(student1);list.add(student2);list.add(student3);list.add(student4);list=list.stream().distinct().collect(Collectors.toList());System.out.println(list);} }

總結(jié)

以上是生活随笔為你收集整理的List------数据结构的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

天天干婷婷 | 欧美资源 | 日韩免费电影 | 中文字幕在线观看一区 | 中文av在线免费观看 | 日韩 在线| 日本在线精品视频 | 精品国产精品国产偷麻豆 | 热久久电影 | 97精品在线观看 | 激情喷水| 激情综合五月天 | 亚洲精品国产精品国自 | 一级黄色片在线观看 | 天天操天天色天天射 | av在线免费观看网站 | av在线播放中文字幕 | 国产成人一区二区啪在线观看 | 国产精品成人久久久 | 亚洲成人av在线 | 激情五月婷婷 | 五月婷婷伊人网 | www.久久视频 | 久在线| 精品在线观看一区二区 | 91精彩视频在线观看 | 天天干天天拍 | av解说在线 | 日本性高潮视频 | 亚洲精品国产麻豆 | 国产亚洲精品成人av久久ww | 91中文字幕永久在线 | 久久久久欧美精品999 | 欧美有色| 欧洲精品码一区二区三区免费看 | 成人性生交大片免费看中文网站 | 国产第一页在线播放 | 国产精品国产三级国产aⅴ9色 | 综合黄色网 | 精品国产伦一区二区三区免费 | 亚洲无吗av | 最近中文字幕免费视频 | 二区三区在线观看 | 97超碰在线资源 | 全黄色一级片 | 久久99久久精品国产 | 亚洲精品免费在线 | 国产亚洲精品久久久久久网站 | 日韩免费av片 | 天天天插 | av在线播放一区二区三区 | av中文天堂在线 | 亚洲黄色大片 | 久久久国产影视 | 色偷偷97 | 国产综合91 | 91.精品高清在线观看 | 黄色视屏免费在线观看 | avove黑丝 | 国产精品成人久久久久 | 精品视频专区 | www亚洲一区 | 免费合欢视频成人app | 视频二区在线 | 97精品国产97久久久久久免费 | 毛片网站在线观看 | 精品久久久久久久久久岛国gif | 国产视 | 久久成人国产精品 | 色噜噜噜| 欧美成天堂网地址 | 天天干夜夜夜操天 | 日韩欧美v | 欧美一区二区三区在线看 | 天天激情| 精壮的侍卫呻吟h | av亚洲产国偷v产偷v自拍小说 | 免费在线看v | 久久久综合九色合综国产精品 | 国产91精品看黄网站 | 天堂av一区二区 | 99九九99九九九视频精品 | 日日爽天天爽 | 久久久精品网站 | aaaaaa毛片| 国产色在线视频 | 欧美日韩一区二区三区视频 | 激情综合网天天干 | 亚洲精品免费在线观看 | 日日夜夜操操操操 | 国内精品亚洲 | 日韩午夜高清 | 夜夜夜夜操 | 狠狠色丁香久久婷婷综合五月 | 五月综合激情婷婷 | 久久这里只有精品1 | 日日夜夜精品 | 日韩激情影院 | 国产精品精品国产婷婷这里av | 91大神精品视频在线观看 | 天无日天天操天天干 | 视频在线99 | 操操综合| 国产资源精品在线观看 | 少妇啪啪av入口 | 在线观看亚洲电影 | 福利视频一区二区 | 国产亚洲在线视频 | 蜜臀久久99精品久久久无需会员 | 日韩在线观看高清 | 久久免费福利 | 免费美女久久99 | 成人免费在线观看入口 | 天堂av在线网址 | 99视频一区二区 | 国产一区二区久久久 | 国产欧美日韩视频 | 成人午夜精品 | 久久久精品久久日韩一区综合 | 国产成人精品一二三区 | 亚洲高清视频一区二区三区 | 国产va精品免费观看 | 天堂av在线网站 | 国产一区二区久久久久 | 成人免费网站在线观看 | 中文字幕在线一区二区三区 | 中文字幕在线视频第一页 | 中文字幕在线观看一区二区三区 | 又色又爽又黄高潮的免费视频 | 成人精品在线 | 国产精品久久久久国产a级 激情综合中文娱乐网 | 成片免费观看视频大全 | 亚洲精品国产视频 | 在线成人短视频 | 欧美性脚交 | 国产精品久久久久久久久久久久冷 | 久久试看 | 亚洲国产mv | 五月天天色 | 日韩精品无码一区二区三区 | 日韩欧美91 | 久久综合影视 | 91视频在线国产 | 91精品啪在线观看国产 | 黄色av免费在线 | 国产精品一区二 | 日韩国产精品久久久久久亚洲 | 亚洲精品合集 | 亚洲午夜久久久久久久久电影网 | 久久综合射 | 亚洲精品日韩一区二区电影 | 国产成人精品一区二区三区 | 日韩成人免费观看 | 日日干日日色 | 亚洲久久视频 | 国产精品麻豆免费版 | 免费观看的av | 国产精品久久久久久久久久久杏吧 | 国产1区在线 | 中文字幕在线成人 | 久久夜色精品国产欧美乱 | 黄色成人影院 | 在线播放你懂 | 久久男人影院 | 欧美日韩亚洲第一页 | 久亚洲 | 精品在线视频一区 | 国产成人三级一区二区在线观看一 | 91精品国产一区二区在线观看 | 香蕉精品视频在线观看 | 中文字幕一区二区在线观看 | 日韩精品中文字幕在线 | 9免费视频 | 91亚洲精品国偷拍自产在线观看 | 精品国产电影一区二区 | 日韩欧美视频一区二区三区 | 国产麻豆成人传媒免费观看 | 91成人国产 | 99久久精品久久久久久清纯 | 日韩素人在线观看 | 99c视频高清免费观看 | 中文在线字幕免 | 国产精品v a免费视频 | 国产一级在线观看视频 | 91完整版在线观看 | 99在线视频网站 | 美女黄频视频大全 | 久久精彩免费视频 | 青青河边草免费直播 | 91在线免费观看网站 | 欧美精品做受xxx性少妇 | 国产一卡久久电影永久 | 日本中文字幕影院 | 欧美日韩国产免费视频 | 久久国产精品成人免费浪潮 | av福利网址导航大全 | 午夜国产福利在线 | 久久久受www免费人成 | 五月婷婷综合在线 | 久久综合五月婷婷 | 亚洲久草视频 | 国产精品高潮在线观看 | 中文字幕视频网站 | 色99导航| 国产精品久久久久久婷婷天堂 | 免费看一级片 | 久久国产精品99久久久久久丝袜 | 69绿帽绿奴3pvideos | 久久av黄色 | 国产小视频在线观看免费 | 国产亚洲情侣一区二区无 | 欧美一级小视频 | 久久亚洲成人网 | 正在播放国产一区 | 久久成人麻豆午夜电影 | 国产精品麻豆欧美日韩ww | 成人精品一区二区三区中文字幕 | 99久久超碰中文字幕伊人 | 日日夜夜综合网 | 国产一级精品绿帽视频 | 久久国产精品99久久久久久老狼 | 在线免费观看欧美日韩 | 色婷婷激情五月 | 色狠狠综合天天综合综合 | 日韩手机在线观看 | 亚洲精品黄色片 | 国产精品婷婷午夜在线观看 | 综合五月婷婷 | 狠狠操精品 | 黄色精品久久 | 黄色官网在线观看 | 日韩一级电影网站 | 狠狠操操操 | 亚洲 成人 欧美 | 青青草国产成人99久久 | 激情视频网页 | 精品福利网站 | 国产无吗一区二区三区在线欢 | 精品国产欧美 | 在线网址你懂得 | 久久激情综合 | 国产一区二区在线免费播放 | 永久中文字幕 | 久久久久免费精品国产小说色大师 | 深夜免费小视频 | 特黄色大片 | 日韩免费一区二区 | 911亚洲精品第一 | 久久婷婷开心 | 国产高清视频免费最新在线 | 精品国产一区二区三区久久久久久 | 黄色app网站在线观看 | 欧美性色黄大片在线观看 | 热久久99这里有精品 | 91精品国产成人观看 | 久久精品毛片基地 | 在线之家官网 | 精品一区 精品二区 | 日本天天操 | 国产精品免费久久久久 | 中国一级片在线播放 | a黄色| 色婷婷综合在线 | 成人在线播放免费观看 | 国产一线二线三线在线观看 | 欧美日韩中文字幕综合视频 | 天堂va在线高清一区 | 国产一级片观看 | 国产九九热视频 | 91在线观看欧美日韩 | 97超碰人人网 | 天天爽天天爽天天爽 | 国产精品久久久久久久久久免费看 | 国产五十路毛片 | 久久免费成人网 | 九九热在线精品视频 | 久久免费高清 | 在线播放日韩av | 日日爱网址 | 久久综合九色欧美综合狠狠 | 日本久草电影 | 久久久九色精品国产一区二区三区 | 免费av大片 | 一级a性色生活片久久毛片波多野 | 日韩三区在线观看 | ,午夜性刺激免费看视频 | 人人干狠狠干 | 天堂在线视频中文网 | 免费在线观看一区 | 欧美午夜精品久久久久 | 亚洲国产剧情av | 黄色视屏免费在线观看 | 女人18片 | www.五月天婷婷 | 黄色亚洲免费 | 美女一二三区 | 96久久精品| 久久精品视频播放 | av大片免费看| 五月激情久久 | 最新色视频 | 国产天天爽 | 91精品蜜桃| 亚洲97在线| 81国产精品久久久久久久久久 | 在线视频a | 天天操综合网站 | 四虎在线观看视频 | 欧美91精品久久久久国产性生爱 | 日韩欧美在线一区二区 | 久久国产香蕉视频 | 在线观看中文 | 1024在线看片| 国产美女精品人人做人人爽 | 日本久久久久久久久久 | 成人天堂网 | 狠狠色丁香久久婷婷综 | www.亚洲精品视频 | 96亚洲精品久久久蜜桃 | av在线免费网 | 爱射综合| 国产成人精品av在线 | 成人免费视频网站在线观看 | 在线观看视频色 | 亚洲视频在线观看 | 日韩字幕在线观看 | 伊人资源视频在线 | 97精品国产一二三产区 | 黄色视屏av | 夜夜骑首页| 天天摸日日摸人人看 | 成人av在线网 | 色天堂在线视频 | 欧美另类重口 | 97免费中文视频在线观看 | 日韩在线中文字幕 | 欧美福利在线播放 | 成人在线一区二区三区 | 三级在线国产 | 国产精品久久久 | 免费国产在线精品 | 麻豆一区在线观看 | 免费高清无人区完整版 | 操操爽| 香蕉久久久久久av成人 | 久久精品高清视频 | 99精品国产一区二区三区不卡 | 欧美一级电影免费观看 | 色综合久久五月天 | 日韩免费一区二区 | 免费在线成人 | 日韩高清免费无专码区 | 337p西西人体大胆瓣开下部 | 日韩免费视频线观看 | 国产成视频在线观看 | 国产黄色免费观看 | 日韩免费电影一区二区 | 精品国产一区二区三区不卡 | 久久久久人人 | 中文字幕成人在线 | 91香蕉国产 | 91av官网| 最新av在线免费观看 | 91人人澡人人爽人人精品 | 激情综合一区 | 国产999精品久久久 免费a网站 | 久草在线综合 | 欧美伦理一区二区三区 | 中文区中文字幕免费看 | 免费看精品久久片 | 激情网站免费观看 | 国产精品二区在线 | 开心丁香婷婷深爱五月 | 麻豆小视频在线观看 | www.av免费观看 | 色噜噜噜噜 | 久久精品国产精品亚洲 | 国产一区二区精品久久 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 三级av片 | 1024手机基地在线观看 | 黄色免费电影网站 | 99综合电影在线视频 | 激情网站 | 在线 你懂 | 日一日操一操 | 日韩亚洲欧美中文字幕 | 国产精久久久久久久 | 黄色中文字幕在线 | 一区精品久久 | 婷婷伊人五月 | 国产91在| 91成版人在线观看入口 | 日韩中文久久 | 欧美精品一级视频 | 精品免费一区二区三区 | 国产天天综合 | 91看片淫黄大片一级在线观看 | 国产精品永久在线观看 | 久久精品视频3 | 日韩精品中文字幕久久臀 | 国产亚洲精品精品精品 | 黄色三级久久 | 一区二区三区免费在线 | 欧美一级视频一区 | 久热av| 中国一级特黄毛片大片久久 | 国产精品视频免费在线观看 | 中文字幕久久精品亚洲乱码 | 看av免费| 激情xxxx| 精品国产午夜 | 天天草天天干天天 | 在线a人v观看视频 | 国产精品欧美一区二区 | 天海冀一区二区三区 | 午夜精品久久久久久久久久久久久久 | 色鬼综合网 | 亚洲欧美激情精品一区二区 | 黄色91免费观看 | 国产一区视频在线播放 | 天天射天天干天天 | 久久精品成人欧美大片古装 | 97超碰影视 | 91免费高清 | 99精品在线观看 | av黄网站 | 黄色毛片观看 | 超碰在线中文字幕 | 日韩欧美一区二区三区在线 | 久久精品国产免费看久久精品 | 久久久久久久久黄色 | 中中文字幕av | 视频在线观看入口黄最新永久免费国产 | 亚洲精品美女视频 | 91在线免费观看网站 | 国产综合视频在线观看 | 国产+日韩欧美 | 欧美精品你懂的 | 国产剧情一区在线 | 91完整版在线观看 | 日韩av电影中文字幕 | 亚洲aⅴ免费在线观看 | 国产一区不卡在线 | 久久久久久久久久久黄色 | 91免费观看国产 | 久久久久久久免费看 | 国产综合香蕉五月婷在线 | 色婷婷导航 | 国产一区二区午夜 | 国产 欧美 在线 | 麻豆精品国产传媒 | 中文字幕在线免费看线人 | 五月开心激情网 | 一级一片免费视频 | 亚洲成av人影片在线观看 | 五月综合久久 | 日b视频国产 | 日韩久久精品一区二区三区下载 | 狠狠操狠狠操 | 久久69精品久久久久久久电影好 | 国产伦理一区二区三区 | 欧美日韩一区二区三区视频 | 久久精品首页 | 国产伦理久久精品久久久久_ | 黄色一级大片在线观看 | 免费观看的av网站 | 最新日本中文字幕 | 日韩在线免费视频观看 | 国产视频一区二区在线观看 | 欧美激情综合网 | 91九色蝌蚪国产 | 日本久久久精品视频 | 一级欧美黄 | 国产免费观看视频 | 免费a v在线 | av不卡中文字幕 | 182午夜在线观看 | 成年人免费在线 | 久久综合免费 | 日韩欧美一区二区三区视频 | 亚洲精品视频在线观看免费视频 | 久久少妇免费视频 | 国产人成看黄久久久久久久久 | 国产精品9区 | 美女视频黄是免费的 | 最近免费中文字幕mv在线视频3 | 国产精品一区在线观看你懂的 | 久久人人精 | 国产精品久久久久久久久婷婷 | 在线观看国产高清视频 | 激情电影影院 | 国产精品一区专区欧美日韩 | 99精品99| 色综合久久综合网 | 国产精品永久在线观看 | 日韩视频一区二区 | 91成人免费电影 | 成人久久久久久久久久 | 亚洲午夜av | 日日操日日操 | 欧美老少交 | 人人干人人上 | 国产精品免费在线播放 | 免费视频久久久久 | 日日成人网 | 中文字幕av免费观看 | 粉嫩av一区二区三区免费 | 制服丝袜一区二区 | 国产又粗又长的视频 | 99精品国产99久久久久久97 | 在线视频专区 | 欧美成人性战久久 | 99re6热在线精品视频 | 国产成人在线观看 | 午夜精品久久久久久久99无限制 | 久久久国产成人 | 97在线观看免费 | 成人免费观看网址 | 久久你懂的| 色综合天天在线 | 国内精品久久久久久久影视简单 | 日韩在线视频播放 | 久久亚洲区| 国内久久精品视频 | 亚洲成人中文在线 | 一区二区三区影院 | 国产精品va视频 | 亚洲视频专区在线 | 天天综合成人网 | 精品久久久久一区二区国产 | 日韩在线观看视频免费 | 狠色狠色综合久久 | 国产高清av免费在线观看 | 99产精品成人啪免费网站 | 日韩免费观看一区二区三区 | 成年人视频在线观看免费 | 国产精品久久久区三区天天噜 | 超级碰碰碰视频 | a在线观看国产 | 草久在线 | 在线一二区 | 成人黄色在线 | 久久精品麻豆 | 日日爱网址 | 一级a毛片高清视频 | 国语黄色片 | 伊人伊成久久人综合网站 | 综合久久综合久久 | 黄色免费在线看 | 特级aaa毛片 | 天天色天天射天天干 | 成人a v视频| 久久久久国产精品免费网站 | 在线亚洲人成电影网站色www | 欧美analxxxx | 麻豆视频在线免费 | 精品久久久久亚洲 | wwwwww国产 | 日韩黄色免费电影 | 正在播放 国产精品 | 亚洲专区路线二 | 国产不卡一 | 天天操夜夜操天天射 | 99热官网 | 成人免费共享视频 | 日本一区二区免费在线观看 | 中文字幕一区在线观看视频 | 久久精品综合 | 久久天天拍 | 黄色av电影在线观看 | 久久影视网 | 亚洲高清视频在线播放 | 亚洲欧美乱综合图片区小说区 | 日韩免费视频网站 | 97人人添人澡人人爽超碰动图 | 亚州人成在线播放 | 国产精品久久久久久久久久久久午夜 | 中文字幕日韩无 | 狠狠躁夜夜a产精品视频 | 亚洲成人av电影 | 不卡的av电影在线观看 | 又粗又长又大又爽又黄少妇毛片 | 中文字幕在线观看一区 | 久久久久一区二区三区四区 | 久久久久亚洲最大xxxx | 狠狠躁夜夜躁人人爽超碰91 | 国产高清视频在线观看 | 精品久久一二三区 | 最近中文字幕大全中文字幕免费 | 欧美一级视频在线观看 | 国内精品小视频 | 丁香电影小说免费视频观看 | 91免费的视频在线播放 | 在线视频 你懂得 | 六月丁香激情网 | 国产精品日韩久久久久 | 69国产精品视频免费观看 | 欧美贵妇性狂欢 | 国产精品女人久久久久久 | 久久久精品午夜 | 欧日韩在线 | 日韩欧美在线综合网 | 国产一区二三区好的 | 国产99久久 | 人人网人人爽 | 天天操夜操视频 | bbbbb女女女女女bbbbb国产 | 五月婷婷在线视频观看 | 在线播放第一页 | 成人动漫精品一区二区 | 一区二区三区日韩在线 | av成人在线网站 | 性色av免费在线观看 | 天天躁日日躁狠狠躁av中文 | 三级动图| 久久综合9988久久爱 | 最近中文字幕第一页 | 91精品视频导航 | 国产精品福利在线播放 | 国内视频在线观看 | 午夜视频免费在线观看 | 国产日韩视频在线播放 | 亚洲 中文 在线 精品 | 免费日韩av片 | 国产视频在线观看一区二区 | 久草在线播放视频 | 二区中文字幕 | 天天综合日日夜夜 | 国产手机av在线 | 亚洲一区二区视频在线 | 中文字幕一区二区三区四区久久 | 欧美在线aa| 国产日韩在线一区 | 国产精品精品国产色婷婷 | 日韩免费在线观看视频 | 五月天天色 | 中文字幕高清av | 涩五月婷婷 | 操操操综合 | www.色国产| 欧美一级片在线观看视频 | 国产成人精品久 | 四虎在线观看 | 黄色影院在线播放 | 日日操天天操狠狠操 | 久草香蕉在线视频 | 国产精品videossex国产高清 | 国产视频丨精品|在线观看 国产精品久久久久久久久久久久午夜 | 91精品国产欧美一区二区 | 深夜免费小视频 | 视频 国产区 | 亚洲v欧美v国产v在线观看 | 免费看片网页 | 亚洲最大av网站 | 国产精品久久久久婷婷 | 国产精品毛片久久久久久久久久99999999 | 亚洲日本三级 | 99精品久久久久久久久久综合 | 国产视频 久久久 | 国产精品k频道 | 色香蕉视频 | 国产精品黄色 | 日本最新一区二区三区 | 国产一级久久 | 国产午夜精品福利视频 | 亚洲精品一区二区三区高潮 | 麻豆 91 在线 | 日韩在线一区二区免费 | 丁香六月综合网 | 国产不卡片| 国产欧美最新羞羞视频在线观看 | 婷婷在线网 | 8x成人免费视频 | 国产欧美精品在线观看 | 欧美伦理一区 | 国产一二三精品 | 欧洲精品二区 | 高清av影院 | 99热国产在线观看 | 日韩欧美视频免费观看 | 欧美日韩在线视频一区 | 狠狠干狠狠插 | 色五月成人 | 激情五月综合网 | 怡春院av| 在线网址你懂得 | 成人一级在线 | 亚洲一区二区精品 | 久草线 | 久草久热 | 国产精品一区二区在线播放 | 免费裸体视频网 | 国产视频一区二区在线播放 | 国产99久久久精品 | 成人av免费在线 | 三级黄色欧美 | 日韩精品免费在线视频 | 中文字幕在线观看免费高清完整版 | 婷婷五月在线视频 | 深爱激情五月综合 | 九九99靖品 | 亚洲h在线播放在线观看h | 一区二区三区免费 | 99久久久精品 | 天堂av在线中文在线 | 91入口在线观看 | 久久精品中文字幕一区二区三区 | 色夜影院| 久久免费高清视频 | 少妇av片| 久久午夜色播影院免费高清 | 国产国语在线 | 91九色porny在线 | 又爽又黄又刺激的视频 | 国产精品久久久999 国产91九色视频 | 精品久久片 | 色老板在线视频 | 国产在线中文字幕 | 成年人在线播放视频 | 九七视频在线 | 黄色av免费电影 | 成年人免费在线观看网站 | 亚洲精品99久久久久久 | 久黄色 | 国产精品一区二区av麻豆 | 日韩精品第1页 | 超碰国产在线 | 91av99 | 久草在线视频首页 | 日韩羞羞| 一级片视频免费观看 | 日韩a在线播放 | 国产91精品看黄网站 | 免费成人短视频 | 狠狠色丁香婷婷综合最新地址 | 欧美日韩综合在线 | 国产原创av在线 | 在线观看视频一区二区三区 | 国产黄色精品 | 欧美一区日韩一区 | 有码视频在线观看 | 国产一区欧美二区 | 国产h在线播放 | 在线观看91精品视频 | 九九九九精品 | 日本护士三级少妇三级999 | 999电影免费在线观看 | 91在线国产观看 | 精品欧美小视频在线观看 | 午夜在线免费视频 | 美女av电影| 综合婷婷 | 91久久精| 99在线免费观看视频 | 中中文字幕av| av片中文字幕 | 成人av观看 | 亚洲成a人片在线观看网站口工 | 99在线免费观看视频 | 色综合天天综合在线视频 | 色爱区综合激月婷婷 | 91九色精品女同系列 | 欧美日韩国产成人 | 91九色在线视频观看 | 久久免费毛片 | 久久久久久高潮国产精品视 | 天天操天天射天天爱 | 91精品国产高清 | 人九九精品 | 国产成人黄色片 | 欧美 日韩 国产 成人 在线 | 日韩二区三区 | 日本在线精品视频 | 日韩欧美一区二区三区在线观看 | 欧洲在线免费视频 | 91视频高清完整版 | 日本h在线播放 | 久99久精品视频免费观看 | 日韩网站一区二区 | 91久久精品日日躁夜夜躁国产 | av高清不卡 | 91精品国产一区二区三区 | 国产精品久久久久久av | 六月婷婷网 | 五月亚洲综合 | 九色91福利 | 91禁在线观看 | 三上悠亚一区二区在线观看 | 夜夜爱av| 婷婷天天色 | 丝袜+亚洲+另类+欧美+变态 | 亚洲成aⅴ人片久久青草影院 | 日韩精品一区二区在线观看 | 99精品免费久久久久久久久 | 一区二区中文字幕在线播放 | 五月婷婷av在线 | 色综合天天做天天爱 | 久久视频这里有精品 | 亚洲精品国偷拍自产在线观看蜜桃 | 成年人在线免费视频观看 | 三级黄色在线观看 | 亚洲区视频在线观看 | 成人免费网站视频 | 最近中文字幕大全中文字幕免费 | 高清有码中文字幕 | 黄色在线视频网址 | 国产在线视频一区 | 天天操天天色综合 | 特黄特黄的视频 | 久久国产精品99久久人人澡 | 久久综合免费视频影院 | 免费a视频 | 亚洲天堂网站 | 高清av中文在线字幕观看1 | 日韩经典一区二区三区 | 99草在线视频 | 国产色拍拍拍拍在线精品 | 国产免费视频在线 | 国产成人精品在线 | 最新国产精品拍自在线播放 | 婷婷色在线观看 | 日韩美女久久 | 日韩在线电影观看 | 国产男女无遮挡猛进猛出在线观看 | www色| 日韩视频一区二区在线观看 | 色综合久久久久综合体桃花网 | 婷婷色伊人 | 香蕉手机在线 | 性色va| 最新婷婷色 | 国产精品免费观看久久 | 欧美视频网址 | av资源中文字幕 | 亚洲日韩中文字幕在线播放 | 婷婷久久久久 | 特级毛片网站 | 亚洲永久在线 | 久久天天躁狠狠躁亚洲综合公司 | 中文字幕国产视频 | 欧美精选一区二区三区 | 欧美黑人巨大xxxxx | 人人干狠狠操 | 国产一卡在线 | 久久精品99久久久久久 | 97国产大学生情侣酒店的特点 | 婷婷国产在线 | 亚洲欧美日韩国产精品一区午夜 | 国产青青青 | 国内精品亚洲 | av日韩av| 欧洲成人av | 99国内精品久久久久久久 | 手机看片午夜 | 日韩免费在线 | 丝袜美女在线观看 | 在线精品视频免费观看 | 在线观看中文字幕一区 | 中文字幕人成不卡一区 | 日韩中文字幕a | 亚洲人毛片 | 深爱五月激情五月 | 日韩高清在线看 | 日韩av一区二区三区在线观看 | 人人插人人费 | 午夜视频一区二区三区 | 99视频在线免费播放 | 亚洲欧洲av在线 | 久久狠狠亚洲综合 | 人人天天夜夜 | 亚洲日本在线视频观看 | 草久在线视频 | 亚洲国产精久久久久久久 | 国产午夜精品久久久久久久久久 | 四川bbb搡bbb爽爽视频 | 99精品在这里 | 噜噜色官网 | 国产在线a视频 | 色视频一区 | 久久国产免费视频 | 日韩中文字幕第一页 | 久久99久久精品 | 97精品国产97久久久久久久久久久久 | 最新av在线播放 | 日本韩国欧美在线观看 | 久久精选视频 | 蜜臀av夜夜澡人人爽人人桃色 | 午夜精品久久久久久久久久久 | 亚洲国产欧美在线人成大黄瓜 | 日韩伦理片一区二区三区 | 在线观看免费黄色 | 亚洲一区二区三区miaa149 | 色婷婷伊人 | 激情综合一区 | 在线精品视频免费观看 | 欧美怡红院视频 | 成 人 黄 色 视频 免费观看 | 国产精品久久久久久麻豆一区 | 在线性视频日韩欧美 | 九九热久久久 | 亚洲天堂精品 | 国产精品色 | 日韩理论在线视频 | 日韩中文字幕a | 日韩欧美视频一区二区三区 | 91亚洲永久精品 | 在线精品观看国产 | 天天色天天干天天色 | 国产精品情侣视频 | 亚洲天堂视频在线 | 中文字幕在线视频一区二区三区 | 黄色一二级片 | 欧洲色综合 | 国产区在线视频 | 日韩精品免费在线观看 | 国产精品欧美一区二区 | 免费色av| 欧美一区免费观看 | 天天摸天天干天天操天天射 | 国产一级免费在线观看 | 国产黄网站在线观看 | 久久刺激视频 | 久久99九九99精品 | 国产精品第52页 | 亚洲国产精久久久久久久 | 中文乱码视频在线观看 | 欧美日韩一区二区久久 | 欧洲精品亚洲精品 | 久久精品一二三区白丝高潮 | 久久精品99国产国产精 | 黄色h在线观看 | 精品国内 | 国产色爽 | 天天操操操操操操 | 一区二区三区四区五区在线 | 成人久久18免费 | 亚洲精品456在线播放第一页 | 97精品一区 | 成人av电影网址 | 日日夜夜狠狠操 | 免费国产亚洲视频 | 天天av资源 | 国产精品久久久久久影院 | 91九色在线观看视频 | 操操操av | 中文字幕一区二区在线播放 | av播放在线 | 丝袜制服综合网 | 国产午夜三级一区二区三桃花影视 | 成人精品一区二区三区电影免费 | 国产精品69av | 91 在线视频播放 | 91福利试看| 日日日日干 | 亚洲免费av一区二区 | 国产91全国探花系列在线播放 | 国产午夜精品一区二区三区嫩草 | 免费三级网 | 中文字幕精品一区二区三区电影 | 精品一区 在线 | 日韩三级中文字幕 | 国产精品欧美日韩在线观看 | 亚洲夜夜爽 | 国产精品一区二区久久国产 | 中文字幕中文字幕中文字幕 | 人人爽久久久噜噜噜电影 | 亚洲网久久 | 中国一级片视频 | 干干操操 | 激情五月六月婷婷 | 欧美色综合久久 | 91丨九色丨蝌蚪丨老版 | 在线视频观看你懂的 | 久久伦理 | 伊人国产在线播放 | 午夜影视av | 中文字幕永久免费 | 日韩av不卡在线播放 | 性色av一区二区三区在线观看 | 91精品一区二区三区蜜桃 | 成人av中文字幕 | 精品国产人成亚洲区 | 中文字幕超清在线免费 | 久久乱码卡一卡2卡三卡四 五月婷婷久 | 毛片a级片| 亚洲日韩精品欧美一区二区 | 免费黄色在线播放 | 狠狠色狠狠色综合日日92 | 欧美资源 | 麻豆久久久久久久 | 精品久久久久国产 | 久久久精品国产免费观看一区二区 | 最新动作电影 | 国产免费亚洲高清 | 久久久网站 | 五月婷婷色播 | 日韩黄色免费看 |