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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

hashmap 扩容是元素还是数组_HashMap 中的容量与扩容实现

發布時間:2023/12/2 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hashmap 扩容是元素还是数组_HashMap 中的容量与扩容实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

總有人心里有火炬,而且彼此能看見。

高手過招,招招致命

JDK1.8 中 HashMap 的底層實現,我相信大家都能說上來個 一二,底層數據結構 數組 + 鏈表(或紅黑樹) ,源碼如下/**

* 數組

*/

transient Node[] table;

/**

* 鏈表結構

*/

static class Node implements Map.Entry {

final int hash;

final K key;

V value;

Node next;

Node(int hash, K key, V value, Node next) {

this.hash = hash;

this.key = key;

this.value = value;

this.next = next;

}

public final K getKey() { return key; }

public final V getValue() { return value; }

public final String toString() { return key + "=" + value; }

public final int hashCode() {

return Objects.hashCode(key) ^ Objects.hashCode(value);

}

public final V setValue(V newValue) {

V oldValue = value;

value = newValue;

return oldValue;

}

public final boolean equals(Object o) {

if (o == this)

return true;

if (o instanceof Map.Entry) {

Map.Entry,?> e = (Map.Entry,?>)o;

if (Objects.equals(key, e.getKey()) &&

Objects.equals(value, e.getValue()))

return true;

}

return false;

}

}

/**

* 紅黑樹結構

*/

static final class TreeNode extends LinkedHashMap.Entry {

TreeNode parent; // red-black tree links

TreeNode left;

TreeNode right;

TreeNode prev; // needed to unlink next upon deletion

boolean red;

...

但面試往往會問的比較細,例如下面的容量問題,我們能答上來幾個?

1、table 的初始化時機是什么時候,初始化的 table.length 是多少、閥值(threshold)是多少,實際能容下多少元素

2、什么時候觸發擴容,擴容之后的 table.length、閥值各是多少?

3、table 的 length 為什么是 2 的 n 次冪

4、求索引的時候為什么是:h&(length-1),而不是 h&length,更不是 h%length

5、 Map map = new HashMap(1000); 當我們存入多少個元素時會觸發map的擴容;Map map1 = new HashMap(10000); 我們存入第 10001個元素時會觸發 map1 擴容嗎

6、為什么加載因子的默認值是 0.75,并且不推薦我們修改

由于我們平時關注的少,一旦碰上這樣的 連擊 + 暴擊,我們往往不知所措、無從應對;接下來我們看看上面的 6 個問題,是不是真的難到無法理解 ,還是我們不夠細心、在自信的自我認為

斗智斗勇,見招拆招

上述的問題,我們如何去找答案 ? 方式有很多種,用的最多的,我想應該是上網查資料、看別人的博客,但我認為最有效、準確的方式是讀源碼

問題 1:table 的初始化

HashMap 的構造方法有如下 4 種/**

* 構造方法 1

*

* 通過 指定的 initialCapacity 和 loadFactor 實例化一個空的 HashMap 對象

*/

public HashMap(int initialCapacity, float loadFactor) {

if (initialCapacity < 0)

throw new IllegalArgumentException("Illegal initial capacity: " +

initialCapacity);

if (initialCapacity > MAXIMUM_CAPACITY)

initialCapacity = MAXIMUM_CAPACITY;

if (loadFactor <= 0 || Float.isNaN(loadFactor))

throw new IllegalArgumentException("Illegal load factor: " +

loadFactor);

this.loadFactor = loadFactor;

this.threshold = tableSizeFor(initialCapacity);

}

/**

* 構造方法 2

*

* 通過指定的 initialCapacity 和 默認的 loadFactor(0.75) 實例化一個空的 HashMap 對象

*/

public HashMap(int initialCapacity) {

this(initialCapacity, DEFAULT_LOAD_FACTOR);

}

/**

* 構造方法 3

*

* 通過默認的 initialCapacity 和 默認的 loadFactor(0.75) 實例化一個空的 HashMap 對象

*/

public HashMap() {

this.loadFactor = DEFAULT_LOAD_FACTOR; // all other fields defaulted

}

/**

*

* 構造方法 4

* 通過指定的 Map 對象實例化一個 HashMap 對象

*/

public HashMap(Map extends K, ? extends V> m) {

this.loadFactor = DEFAULT_LOAD_FACTOR;

putMapEntries(m, false);

}

構造方式 4 和 構造方式 1 實際應用的不多,構造方式 2 直接調用的 1(底層實現完全一致),構造方式 2 和 構造方式 3 比較常用,而最常用的是構造方式 3;此時我們以構造方式 3 為前提來分析,而構造方式 2 我們則在問題 5 中來分析

使用方式 1 實例化 HashMap 的時候,table 并未進行初始化,那 table 是何時進行初始化的了 ?平時我們是如何使用 HashMap 的,先實例化、然后 put、然后進行其他操作,如下Map map = new HashMap();

map.put("name", "張三");

map.put("age", 21);

// 后續操作

...

既然實例化的時候未進行 table 的初始化,那是不是在 put 的時候初始化的了,我們來確認下:

resize() 初始化 table 或 對 table 進行雙倍擴容,源碼如下(注意看注釋)/**

* Initializes or doubles table size. If null, allocates in

* accord with initial capacity target held in field threshold.

* Otherwise, because we are using power-of-two expansion, the

* elements from each bin must either stay at same index, or move

* with a power of two offset in the new table.

*

* @return the table

*/

final Node[] resize() {

Node[] oldTab = table; // 第一次 put 的時候,table = null

int oldCap = (oldTab == null) ? 0 : oldTab.length; // oldCap = 0

int oldThr = threshold; // threshold=0, oldThr = 0

int newCap, newThr = 0;

if (oldCap > 0) { // 條件不滿足,往下走

if (oldCap >= MAXIMUM_CAPACITY) {

threshold = Integer.MAX_VALUE;

return oldTab;

}

else if ((newCap = oldCap << 1) < MAXIMUM_CAPACITY &&

oldCap >= DEFAULT_INITIAL_CAPACITY)

newThr = oldThr << 1; // double threshold

}

else if (oldThr > 0) // initial capacity was placed in threshold

newCap = oldThr;

else { // zero initial threshold signifies using defaults 走到這里,進行默認初始化

newCap = DEFAULT_INITIAL_CAPACITY; // DEFAULT_INITIAL_CAPACITY = 1 << 4 = 16, newCap = 16;

newThr = (int)(DEFAULT_LOAD_FACTOR * DEFAULT_INITIAL_CAPACITY); // newThr = 0.75 * 16 = 12;

}

if (newThr == 0) { // 條件不滿足

float ft = (float)newCap * loadFactor;

newThr = (newCap < MAXIMUM_CAPACITY && ft < (float)MAXIMUM_CAPACITY ?

(int)ft : Integer.MAX_VALUE);

}

threshold = newThr; // threshold = 12; 重置閥值為12

@SuppressWarnings({"rawtypes","unchecked"})

Node[] newTab = (Node[])new Node[newCap]; // 初始化 newTab, length = 16;

table = newTab; // table 初始化完成, length = 16;

if (oldTab != null) { // 此時條件不滿足,后續擴容的時候,走此if分支 將數組元素復制到新數組

for (int j = 0; j < oldCap; ++j) {

Node e;

if ((e = oldTab[j]) != null) {

oldTab[j] = null;

if (e.next == null)

newTab[e.hash & (newCap - 1)] = e;

else if (e instanceof TreeNode)

((TreeNode)e).split(this, newTab, j, oldCap);

else { // preserve order

Node loHead = null, loTail = null;

Node hiHead = null, hiTail = null;

Node next;

do {

next = e.next;

if ((e.hash & oldCap) == 0) {

if (loTail == null)

loHead = e;

else

loTail.next = e;

loTail = e;

}

else {

if (hiTail == null)

hiHead = e;

else

hiTail.next = e;

hiTail = e;

}

} while ((e = next) != null);

if (loTail != null) {

loTail.next = null;

newTab[j] = loHead;

}

if (hiTail != null) {

hiTail.next = null;

newTab[j + oldCap] = hiHead;

}

}

}

}

}

return newTab; // 新數組

}

自此,問題 1 的答案就明了了

table 的初始化時機是什么時候

一般情況下,在第一次 put 的時候,調用 resize 方法進行 table 的初始化(懶初始化,懶加載思想在很多框架中都有應用!)

初始化的 table.length 是多少、閥值(threshold)是多少,實際能容下多少元素默認情況下,table.length = 16; 指定了 initialCapacity 的情況放到問題 5 中分析

默認情況下,threshold = 12; 指定了 initialCapacity 的情況放到問題 5 中分析

默認情況下,能存放 12 個元素,當存放第 13 個元素后進行擴容

問題 2 :table 的擴容

putVal 源碼如下/**

* Implements Map.put and related methods

*

* @param hash hash for key

* @param key the key

* @param value the value to put

* @param onlyIfAbsent if true, don't change existing value

* @param evict if false, the table is in creation mode.

* @return previous value, or null if none

*/

final V putVal(int hash, K key, V value, boolean onlyIfAbsent,

boolean evict) {

Node[] tab; Node p; int n, i;

if ((tab = table) == null || (n = tab.length) == 0)

n = (tab = resize()).length;

if ((p = tab[i = (n - 1) & hash]) == null)

tab[i] = newNode(hash, key, value, null);

else {

Node e; K k;

if (p.hash == hash &&

((k = p.key) == key || (key != null && key.equals(k))))

e = p;

else if (p instanceof TreeNode)

e = ((TreeNode)p).putTreeVal(this, tab, hash, key, value);

else {

for (int binCount = 0; ; ++binCount) {

if ((e = p.next) == null) {

p.next = newNode(hash, key, value, null);

if (binCount >= TREEIFY_THRESHOLD - 1) // -1 for 1st

treeifyBin(tab, hash);

break;

}

if (e.hash == hash &&

((k = e.key) == key || (key != null && key.equals(k))))

break;

p = e;

}

}

if (e != null) { // existing mapping for key

V oldValue = e.value;

if (!onlyIfAbsent || oldValue == null)

e.value = value;

afterNodeAccess(e);

return oldValue;

}

}

++modCount;

if (++size > threshold) // 當size(已存放元素個數) > thrshold(閥值),進行擴容

resize();

afterNodeInsertion(evict);

return null;

}

還是調用 resize() 進行擴容,但與初始化時不同(注意看注釋)/**

* Initializes or doubles table size. If null, allocates in

* accord with initial capacity target held in field threshold.

* Otherwise, because we are using power-of-two expansion, the

* elements from each bin must either stay at same index, or move

* with a power of two offset in the new table.

*

* @return the table

*/

final Node[] resize() {

Node[] oldTab = table; // 此時的 table != null,oldTab 指向舊的 table

int oldCap = (oldTab == null) ? 0 : oldTab.length; // oldCap = table.length; 第一次擴容時是 16

int oldThr = threshold; // threshold=12, oldThr = 12;

int newCap, newThr = 0;

if (oldCap > 0) { // 條件滿足,走此分支

if (oldCap >= MAXIMUM_CAPACITY) {

threshold = Integer.MAX_VALUE;

return oldTab;

}

else if ((newCap = oldCap << 1) < MAXIMUM_CAPACITY && // oldCap左移一位; newCap = 16 << 1 = 32;

oldCap >= DEFAULT_INITIAL_CAPACITY)

newThr = oldThr << 1; // double threshold // newThr = 12 << 1 = 24;

}

else if (oldThr > 0) // initial capacity was placed in threshold

newCap = oldThr;

else { // zero initial threshold signifies using defaults

newCap = DEFAULT_INITIAL_CAPACITY; // DEFAULT_INITIAL_CAPACITY = 1 << 4 = 16, newCap = 16;

newThr = (int)(DEFAULT_LOAD_FACTOR * DEFAULT_INITIAL_CAPACITY);

}

if (newThr == 0) { // 條件不滿足

float ft = (float)newCap * loadFactor;

newThr = (newCap < MAXIMUM_CAPACITY && ft < (float)MAXIMUM_CAPACITY ?

(int)ft : Integer.MAX_VALUE);

}

threshold = newThr; // threshold = newThr = 24; 重置閥值為 24

@SuppressWarnings({"rawtypes","unchecked"})

Node[] newTab = (Node[])new Node[newCap]; // 初始化 newTab, length = 32;

table = newTab; // table 指向 newTab, length = 32;

if (oldTab != null) { // 擴容后,將 oldTab(舊table) 中的元素移到 newTab(新table)中

for (int j = 0; j < oldCap; ++j) {

Node e;

if ((e = oldTab[j]) != null) {

oldTab[j] = null;

if (e.next == null)

newTab[e.hash & (newCap - 1)] = e; //

else if (e instanceof TreeNode)

((TreeNode)e).split(this, newTab, j, oldCap);

else { // preserve order

Node loHead = null, loTail = null;

Node hiHead = null, hiTail = null;

Node next;

do {

next = e.next;

if ((e.hash & oldCap) == 0) {

if (loTail == null)

loHead = e;

else

loTail.next = e;

loTail = e;

}

else {

if (hiTail == null)

hiHead = e;

else

hiTail.next = e;

hiTail = e;

}

} while ((e = next) != null);

if (loTail != null) {

loTail.next = null;

newTab[j] = loHead;

}

if (hiTail != null) {

hiTail.next = null;

newTab[j + oldCap] = hiHead;

}

}

}

}

}

return newTab;

}

自此,問題 2 的答案也就清晰了

什么時候觸發擴容,擴容之后的 table.length、閥值各是多少當 size > threshold 的時候進行擴容

擴容之后的 table.length = 舊 table.length * 2,

擴容之后的 threshold = 舊 threshold * 2

問題 3、4 :2 的 n 次冪

table 是一個數組,那么如何最快的將元素 e 放入數組 ?當然是找到元素 e 在 table 中對應的位置 index ,然后 table[index] = e; 就好了;如何找到 e 在 table 中的位置了 ?

我們知道只能通過數組下標(索引)操作數組,而數組的下標類型又是 int ,如果 e 是 int 類型,那好說,就直接用 e 來做數組下標(若 e > table.length,則可以 e % table.length 來獲取下標),可 key - value 中的 key 類型不一定,所以我們需要一種統一的方式將 key 轉換成 int ,最好是一個 key 對應一個唯一的 int (目前還不可能, int有范圍限制,對轉換方法要求也極高),所以引入了 hash 方法static final int hash(Object key) {

int h;

return (key == null) ? 0 : (h = key.hashCode()) ^ (h >>> 16);  // 這里的處理,有興趣的可以琢磨下;能夠減少碰撞

}

實現 key 到 int 的轉換(關于 hash,本文不展開討論)。拿到了 key 對應的 int h 之后,我們最容易想到的對 value 的 put 和 get 操作也許如下// put

table[h % table.length] = value;

// get

e = table[h % table.length];

直接取模是我們最容易想到的獲取下標的方法,但是最高效的方法嗎 ?

我們知道計算機中的四則運算最終都會轉換成二進制的位運算

我們可以發現,只有 & 數是1時,& 運算的結果與被 & 數一致1&1=1;

0&1=0;

1&0=0;

0&0=0;

這同樣適用于多位操作數1010&1111=1010; => 10&15=10;

1011&1111=1011; => 11&15=11;

01010&10000=00000; => 10&16=0;

01011&10000=00000; => 11&16=0;

我們是不是又有所發現:10 & 16 與 11 & 16 得到的結果一樣,也就是沖突(碰撞)了,那么 10 和 11 對應的 value 會在同一個鏈表中,而 table 的有些位置則永遠不會有元素,這就導致 table 的空間未得到充分利用,同時還降低了 put 和 get 的效率(對比數組和鏈表);由于是 2 個數進行 & 運算,所以結果由這兩個數決定,如果我們把這兩個數都做下限制,那得到的結果是不是可控制在我們想要的范圍內了 ?

我們需要利用好 & 運算的特點,當右邊的數的低位二進制是連續的 1 ,且左邊是一個均勻的數(需要 hash 方法實現,盡量保證 key 的 h 唯一),那么得到的結果就比較完美了。低位二進制連續的 1,我們很容易想到 2^n - 1; 而關于左邊均勻的數,則通過 hash 方法來實現,這里不做細究了。更多面試題,歡迎關注 公眾號Java面試題精選

自此,2 的 n 次冪的相關問題就清楚了

table 的 length 為什么是 2 的 n 次冪

為了利用位運算 & 求 key 的下標

求索引的時候為什么是:h&(length-1),而不是 h&length,更不是 h%lengthh%length 效率不如位運算快

h&length 會提高碰撞幾率,導致 table 的空間得不到更充分的利用、降低 table 的操作效率

給各位留個疑問:為什么不直接用 2^n-1 作為 table.length ?歡迎評論區留言

問題 5:指定 initialCapacity

當我們指定了 initialCapacity,HashMap的構造方法有些許不同,調用 tableSizeFor 進行 threshold 的初始化/**

* Returns a power of two size for the given target capacity.

* 返回 >= cap 最小的 2^n

* cap = 10, 則返回 2^4 = 16;

* cap = 5, 則返回 2^3 = 8;

*/

static final int tableSizeFor(int cap) {

int n = cap - 1;

n |= n >>> 1;

n |= n >>> 2;

n |= n >>> 4;

n |= n >>> 8;

n |= n >>> 16;

return (n < 0) ? 1 : (n >= MAXIMUM_CAPACITY) ? MAXIMUM_CAPACITY : n + 1;

}

雖然此處初始化的是 threshold,但后面初始化 table 的時候,會將其用于 table 的 length,同時會重置 threshold 為 table.length * loadFactor

自此,問題 5 也就清楚了

Map map = new HashMap(1000); 當我們存入多少個元素時會觸發map的擴容

此時的 table.length = 2^10 = 1024; threshold = 1024 * 0.75 = 768; 所以存入第 769 個元素時進行擴容

Map map1 = new HashMap(10000); 我們存入第 10001個元素時會觸發 map1 擴容嗎

此時的 table.length = 2^14 = 16384; threshold = 16384 * 0.75 = 12288; 所以存入第 10001 個元素時不會進行擴容

問題6:加載因子

為什么加載因子的默認值是 0.75,并且不推薦我們修改如果loadFactor太小,那么map中的table需要不斷的擴容,擴容是個耗時的過程

如果loadFactor太大,那么map中table放滿了也不不會擴容,導致沖突越來越多,解決沖突而起的鏈表越來越長,效率越來越低

而 0.75 這是一個折中的值,是一個比較理想的值

總結

1、table.length = 2^n,是為了能利用位運算(&)來求 key 的下標,而 h&(length-1) 是為了充分利用 table 的空間,并減少 key 的碰撞

2、加載因子太小, table 需要不斷的擴容,影響 put 效率;太大會導致碰撞越來越多,鏈表越來越長(轉紅黑樹),影響效率;0.75 是一個比較理想的中間值

3、table.length = 2^n、hash 方法獲取 key 的 h、加載因子 0.75、數組 + 鏈表(或紅黑樹),一環扣一環,保證了 key 在 table 中的均勻分配,充分利用了空間,也保證了操作效率,環環相扣的,而不是心血來潮的隨意處理;缺了一環,其他的環就無意義了!

4、網上有個 put 方法的流程圖畫的挺好,我就偷懶了

總結

以上是生活随笔為你收集整理的hashmap 扩容是元素还是数组_HashMap 中的容量与扩容实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

精品免费 | 99免费在线播放99久久免费 | 日韩视频一区二区 | 亚洲免费av片 | 在线黄色国产电影 | 久久精品中文字幕免费mv | 中文字幕日本在线 | 亚洲资源网 | 亚洲国产精品久久久久久 | 97精品国产97久久久久久 | 天天操天天吃 | 日韩欧美一区二区在线播放 | 国产在线p| 久久久免费精品国产一区二区 | 国产精品 亚洲精品 | 中文在线免费视频 | 黄色www在线观看 | 国产精品久久久久久久毛片 | 日本视频久久久 | 亚洲免费精品一区二区 | 亚洲精品999 | 久久精品国产一区二区三 | 精品一区精品二区 | 免费看高清毛片 | 欧美亚洲国产精品久久高清浪潮 | 久久久久99精品成人片三人毛片 | 久久久999精品视频 国产美女免费观看 | 丁香五月网久久综合 | 色网站在线免费 | av免费片| 女人18毛片a级毛片一区二区 | 国产精品永久免费视频 | 在线一二区 | av在线电影免费观看 | 久影院| 欧美一区二区精品在线 | 久草视频播放 | 欧美专区日韩专区 | 久久国产精品二国产精品中国洋人 | 国产在线精品一区二区不卡了 | 黄色免费高清视频 | 91大神免费在线观看 | 六月婷操 | 一区二区三区电影 | 免费观看视频的网站 | 久久精品91久久久久久再现 | 成人av直播| 国产黄av | 亚洲激情五月 | 国产成人精品a | 欧美va天堂va视频va在线 | 久久久久综合视频 | 成人免费看片98欧美 | 色天天综合久久久久综合片 | 成人黄色片免费 | 日本在线观看一区二区 | 免费视频久久久久久久 | 精品国产99国产精品 | 国产精品18久久久久久首页狼 | 国产在线观看污片 | 国产精品国产三级国产aⅴ9色 | 四虎在线观看视频 | 国产99久久久久 | 国产精品高潮久久av | 欧美性护士 | 福利视频午夜 | 久久任你操 | 2022久久国产露脸精品国产 | 免费成人av在线 | 九九热视频在线 | 九色精品免费永久在线 | 久久草在线免费 | 91精品国产综合久久福利不卡 | 亚洲欧美视屏 | 中文字幕高清在线 | 国产在线观看免 | 九九热精 | 国产成人精品999 | 91久久国产综合精品女同国语 | 天天干天天插 | 黄网站大全 | 国产精品日韩久久久久 | 在线观看国产日韩欧美 | 丁香在线观看完整电影视频 | 国产黄色片在线 | 97精品国自产拍在线观看 | 亚洲精品乱码久久久久久久久久 | 欧美一级特黄aaaaaa大片在线观看 | 中文字幕在线观看你懂的 | 亚洲精品美女免费 | 国产在线精品福利 | 日韩中文久久 | 亚洲欧洲精品一区二区精品久久久 | 十八岁以下禁止观看的1000个网站 | 视频在线99re| 在线观看视频精品 | 亚洲成人av片| 精品久久久久久久久中文字幕 | 欧美二区三区91 | 狠狠色伊人亚洲综合网站野外 | 日日天天狠狠 | 成人免费观看在线视频 | 一区二区三区手机在线观看 | 99r在线观看 | 日本爱爱片 | 五月激情电影 | 国产精品18久久久久久久久久久久 | 在线视频一区观看 | 午夜在线观看 | 伊人久久在线观看 | caobi视频| www欧美日韩 | 午夜三级福利 | 免费网站污 | 丁香六月综合网 | 免费裸体视频网 | 激情网站免费观看 | 国产91精品一区二区麻豆网站 | 丰满少妇在线观看资源站 | 97精品欧美91久久久久久 | 香蕉视频在线免费 | 亚洲国产日韩精品 | 日本色小说视频 | 精品国产一区二区三区不卡 | 国产一级视频在线免费观看 | 久久av伊人 | 黄色一级影院 | 日韩在线在线 | 在线观看黄色小视频 | 天天添夜夜操 | 国产成人三级三级三级97 | 国产在线欧美日韩 | 中日韩三级视频 | 日日夜夜狠狠干 | 日本黄色免费电影网站 | 久久影院午夜论 | 国产91全国探花系列在线播放 | 91porny九色在线播放 | 国产精品久久久久四虎 | 一区二区三区四区在线 | 尤物97国产精品久久精品国产 | 亚洲禁18久人片 | 尤物97国产精品久久精品国产 | 成人av影视在线 | 超碰人人超 | 免费三级大片 | 精品一区二区精品 | 色婷婷一| 亚州精品天堂中文字幕 | 精品产品国产在线不卡 | 日韩在线免费观看视频 | 久久综合爱 | 久久久久久国产精品美女 | 国产999精品 | 夜夜狠狠| 日韩久久一区二区 | 婷婷精品在线视频 | www.久久色| 在线观看91av| 激情五月婷婷综合网 | 国产精品久久久99 | 国产在线播放一区二区三区 | 91新人在线观看 | 丁香六月婷婷激情 | 插婷婷| 日韩四虎 | 亚洲精品国产精品乱码在线观看 | 色婷婷综合久久久久中文字幕1 | 成人午夜免费福利 | 欧美网址在线观看 | 精品91久久久久 | 500部大龄熟乱视频 欧美日本三级 | 天天爱av导航 | 99激情网| 天天操天天射天天爽 | 在线观看国产v片 | 久久久久久福利 | 中文字幕在线影视资源 | 成人小视频免费在线观看 | 久久精品影视 | 国产成人精品午夜在线播放 | 99在线视频免费观看 | 国产三级精品三级在线观看 | 国产看片网站 | 日韩不卡高清视频 | 免费黄a | 国产一区在线视频播放 | 国产精品永久免费在线 | 久久视频这里有久久精品视频11 | 欧美精品黑人性xxxx | 久香蕉 | 99婷婷狠狠成为人免费视频 | 久久99国产精品久久99 | 欧美激情片在线观看 | 日本精品va在线观看 | 九九精品在线观看 | 久久久久久国产精品亚洲78 | 一区二精品| 免费在线激情视频 | av在线播放亚洲 | 97在线播放视频 | 国产尤物在线 | 精品一区二区免费 | 激情黄色一级片 | 欧美日韩国产精品一区二区亚洲 | 国产一线二线三线性视频 | 亚洲精品国产区 | 日本一区二区三区视频在线播放 | 国产视频中文字幕在线观看 | 国产精品久久久久久模特 | 久久视频在线看 | 日韩欧美高清视频在线观看 | 亚洲理论在线观看 | 日韩欧美一区二区三区视频 | 最新国产精品亚洲 | 人人爽人人乐 | 婷婷国产v亚洲v欧美久久 | 国际精品久久 | 久久九九久久精品 | 久久精品导航 | 久久综合九色九九 | 99久久99热这里只有精品 | 国产精品久久一区二区三区不卡 | 有码视频在线观看 | 久久这里精品视频 | 中国一级片视频 | 91麻豆福利 | 亚洲成人一区 | 久久久久久伊人 | 日韩免费在线观看 | 玖玖在线播放 | 日本激情动作片免费看 | 成人免费观看完整版电影 | 国产精品6 | 久久久久免费精品视频 | 在线观看911视频 | 最近中文字幕国语免费av | 国产亚洲综合在线 | 日韩成人在线免费观看 | 欧美不卡视频在线 | 99精品国产99久久久久久97 | 色偷偷88888欧美精品久久 | 在线观看的av网站 | 日韩,精品电影 | 欧美日韩高清在线一区 | 久久久久女教师免费一区 | 91桃色国产在线播放 | 成人性生交大片免费看中文网站 | 精品国产免费久久 | 国产精品99久久99久久久二8 | 五月色丁香 | 国产专区视频在线观看 | 国产成人一区二区精品非洲 | 亚洲精品资源在线观看 | 国产久草在线观看 | 草久热 | 狠狠狠色丁香婷婷综合久久五月 | 麻豆综合网| 久久精品99国产精品亚洲最刺激 | 韩国av免费 | 91在线操| 成人免费在线观看入口 | av永久网址| 成人毛片久久 | 午夜一级免费电影 | 久久99久久99精品免费看小说 | 精品国产自在精品国产精野外直播 | 国产精品视频999 | 亚洲三级网站 | 国产精品日韩久久久久 | 日韩欧美国产激情在线播放 | 久久夜av| aaa黄色毛片| 日韩一级理论片 | 日本午夜在线观看 | 婷婷视频在线观看 | 精品综合久久久 | 久久精品99国产精品亚洲最刺激 | av动图| 亚洲免费av一区二区 | 四虎影视成人永久免费观看亚洲欧美 | 日本精品视频在线播放 | 天天摸天天操天天爽 | 亚洲一区二区三区在线看 | 国产精品久久久久久麻豆一区 | 午夜三级在线 | 欧美精品久久久久久久久老牛影院 | 日本黄色免费电影网站 | 日韩精品一区二区三区电影 | 人人舔人人 | 日韩中文字幕免费看 | 国产中文字幕久久 | 国产免费一区二区三区网站免费 | 毛片网站免费 | 日本三级中文字幕在线观看 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | 欧美做受69 | 久久伊人国产精品 | 4438全国亚洲精品观看视频 | 成人免费电影 | 久久久亚洲影院 | 亚洲视频免费 | 国产精品久久久久久a | 国产精品一区二区久久精品爱涩 | 免费大片黄在线 | 国产区免费在线 | 91在线视频免费91 | 日韩大片在线免费观看 | 亚洲激情六月 | 在线观看免费91 | 最新国产在线视频 | av日韩av | 韩国av免费在线观看 | 91九色视频在线观看 | 国产少妇在线观看 | 色婷婷国产精品 | 一区二区三区免费在线观看视频 | 久久久99精品免费观看乱色 | 中文字幕中文字幕在线中文字幕三区 | 久久久亚洲国产精品麻豆综合天堂 | 婷婷中文字幕综合 | 亚洲精品国产免费 | 国产综合小视频 | 91麻豆文化传媒在线观看 | 麻豆视频在线免费观看 | 亚洲日本色 | 日本深夜福利视频 | 五月婷婷丁香综合 | 亚洲国产精品久久久久 | 伊人久久电影网 | 国产福利在线不卡 | 天天操天天射天天舔 | 黄色大片av | 久久久久国产精品一区 | 婷婷综合久久 | 高清av免费观看 | 亚洲精品在线视频观看 | 精品99在线视频 | 国产精品久久久久久久久免费看 | 亚洲另类久久 | 欧美 日韩 国产 中文字幕 | 国产在线a| 精品国产一区二区三区久久久久久 | 精品福利视频在线 | 久久久久久黄色 | 麻豆影视网 | 91精品成人久久 | 国产精品激情偷乱一区二区∴ | 久久精品直播 | 欧美成人中文字幕 | 成人作爱视频 | 欧美最爽乱淫视频播放 | www狠狠操 | 日日夜夜av| 中文字幕在线视频精品 | 美女网站黄在线观看 | 18久久久久久 | 国产亚洲精品日韩在线tv黄 | av电影在线观看完整版一区二区 | av在线激情 | 国产精品久久久久久五月尺 | 久久久www成人免费毛片 | 6080yy精品一区二区三区 | 国产精品成久久久久 | 久久狠狠婷婷 | 国产a国产| 二区视频在线观看 | 97国产超碰 | 二区三区av | 久草热久草视频 | 丰满少妇在线观看网站 | 九九九九九九精品任你躁 | 男女免费视频观看 | 99久久精品免费 | 成人黄色小说视频 | 国产成人亚洲在线观看 | 四虎在线永久免费观看 | 五月激情在线 | 久久96国产精品久久99软件 | 狠狠躁日日躁夜夜躁av | 国产在线看 | www.亚洲精品 | 日韩a在线播放 | 免费欧美高清视频 | 日韩激情av在线 | 欧洲av不卡 | 成 人 黄 色视频免费播放 | 黄色国产高清 | 三级在线视频播放 | 99视频精品免费观看, | 在线观看的a站 | 一区二区精品国产 | 日韩电影在线观看一区 | 干干日日| 911久久香蕉国产线看观看 | 在线你懂的视频 | 国产精品久久久免费 | 久久精品日本啪啪涩涩 | 欧洲精品视频一区二区 | 一区二区高清在线 | 国产亚洲精品久 | 国产欧美日韩精品一区二区免费 | 日韩中文免费视频 | 欧美激情在线网站 | 日韩在线无 | 涩五月婷婷 | 免费观看一区二区 | 一区 二区 精品 | 91免费在线播放 | 欧美激情综合色综合啪啪五月 | 国产精品入口麻豆www | 久久久久国产精品免费免费搜索 | 五月婷婷av | 国产婷婷精品av在线 | 国产午夜精品一区二区三区四区 | 高清视频一区二区三区 | www.福利视频 | 日韩精品高清视频 | 色综合久久99 | 麻豆视频免费在线播放 | 欧美性生活一级片 | 国产精品理论视频 | 成人黄色在线电影 | 久久九九国产精品 | 欧美在线视频一区二区三区 | 欧美日韩一区二区三区免费视频 | 日日干夜夜爱 | 一区二区三区精品在线视频 | 国产成人99久久亚洲综合精品 | 二区三区av | 色婷婷一区 | 丁香激情网 | 六月婷婷久香在线视频 | zzijzzij亚洲日本少妇熟睡 | 美女国产 | 成人永久视频 | 日韩 在线观看 | 91精品国自产在线偷拍蜜桃 | 在线观av | 69精品视频在线观看 | 在线观看的av网站 | 久久精品视频国产 | 成x99人av在线www| 国产中文字幕网 | 成人av免费看 | 超碰人人草| 亚洲专区一二三 | 日韩电影久久 | 91看片淫黄大片在线播放 | 伊人影院在线观看 | www.99av| 午夜美女福利 | 色综合天天色 | 欧美日韩18 | 欧美网址在线观看 | 一区二三国产 | 久久99在线视频 | 精品视频久久久久久 | 日韩电影中文字幕在线观看 | 日韩精品中文字幕一区二区 | 欧美精品少妇xxxxx喷水 | 欧美一区二区精品在线 | 精品久久一区二区三区 | 日韩欧美在线综合网 | 久久免费视频精品 | 色综合天天天天做夜夜夜夜做 | 亚洲区视频在线观看 | 久久成人综合视频 | 亚洲午夜av | av在线精品 | 视频三区 | 综合激情伊人 | 日韩欧美在线观看一区二区三区 | 亚洲一区二区三区精品在线观看 | 免费看黄色小说的网站 | 成人性生交大片免费观看网站 | 一区二精品 | 国模视频一区二区 | 亚洲作爱视频 | 五月婷丁香网 | av在线色| 久久久影院官网 | av3级在线 | 亚洲视屏一区 | 中文在线中文a | 亚洲国产精品久久 | 久久 亚洲视频 | 成人在线免费看 | 国产高清视频在线播放 | 亚州人成在线播放 | 91激情视频在线观看 | 精品一二三四五区 | 在线成人中文字幕 | 成人免费在线视频观看 | 亚洲视频在线免费观看 | 久久亚洲综合国产精品99麻豆的功能介绍 | 香蕉在线视频观看 | 五月天堂色 | 亚洲一区二区三区在线看 | 国产一级二级在线观看 | 国产成人99久久亚洲综合精品 | 免费视频二区 | 久久久久女教师免费一区 | 国产黄色片免费在线观看 | 亚洲一区二区三区四区精品 | 在线观看视频h | 欧美9999 | 日韩超碰 | 日本最大色倩网站www | 久久久久欧美精品 | 欧美一区二区在线 | 亚洲精品在线资源 | 免费a级大片 | 国产视频九色蝌蚪 | 丁香在线| 婷婷婷国产在线视频 | 国产免费视频在线 | 91视频这里只有精品 | 国产一级二级视频 | 成年人在线免费视频观看 | 国产亚洲精品bv在线观看 | 久久久久亚洲精品成人网小说 | 欧美色精品天天在线观看视频 | 日韩精品在线一区 | 激情婷婷 | 亚洲国产大片 | 免费网站观看www在线观看 | 色五月情| 国产在线探花 | 超碰在线观看97 | 就要色综合 | 毛片网站免费在线观看 | 国产在线不卡一区 | www亚洲精品 | 国产成人久久精品亚洲 | 黄色一级免费 | 四虎国产精品免费 | 91av综合| 国产不卡视频在线 | 97成人资源 | 日韩在线观看小视频 | 色狠狠干| 久久国产高清 | 00av视频| 99久高清在线观看视频99精品热在线观看视频 | 国产不卡免费视频 | 在线视频 国产 日韩 | 欧美九九九 | 国产91aaa | 国产色妞影院wwwxxx | 一区 在线观看 | 在线导航福利 | 欧美一级性生活片 | 久久久久综合视频 | 久久怡红院 | 色夜影院 | 亚洲国产视频在线 | 一区二区久久久久 | 日韩在线免费播放 | 蜜桃视频成人在线观看 | 国产精品免费视频网站 | 久久久国产在线视频 | 在线观看91精品国产网站 | 精品视频在线观看 | 999久久国精品免费观看网站 | 五月天久久激情 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 国产精品免费观看网站 | 国产h片在线观看 | 成人免费网视频 | japanese黑人亚洲人4k | 成人福利在线 | 国产精品视频地址 | 视频在线观看入口黄最新永久免费国产 | 婷婷在线看 | 国产精品理论片在线播放 | 国产精品成人自产拍在线观看 | 久久夜色精品国产欧美乱极品 | 人人藻人人澡人人爽 | 在线观看中文av | 色婷婷狠狠干 | 成年人免费av网站 | 午夜精品久久久久久久久久 | 久久人人看 | 婷婷久久亚洲 | 免费看污网站 | 亚洲精品va | 日本久久免费视频 | 五月天婷婷在线观看视频 | 中文字幕久久精品一区 | 国内精品久久天天躁人人爽 | 欧美在线1区 | 麻豆91在线 | 国产精品久久久久久久久久久不卡 | 国产理论免费 | 精品久久久久久亚洲综合网站 | www178ccom视频在线 | 国产高清av在线播放 | 探花系列在线 | 成人在线视频免费观看 | 在线观看91精品视频 | 亚洲成aⅴ人片久久青草影院 | 亚洲欧洲成人精品av97 | 91免费试看 | 狠狠色丁香婷婷综合橹88 | 一本一道波多野毛片中文在线 | 射久久久 | 91高清不卡 | 亚洲精品麻豆 | 91网站免费观看 | 国产精品中文 | 激情综合啪 | 日韩av在线一区二区 | 欧美天堂久久 | 亚洲h在线播放在线观看h | 蜜臀av免费一区二区三区 | 亚洲日本韩国一区二区 | 日韩视频在线一区 | 久久在线看 | 最新中文字幕在线观看视频 | 在线黄色观看 | 欧美日韩高清一区二区 国产亚洲免费看 | 91av电影在线 | 成人网在线免费视频 | 手机在线看a | 国产黄色在线观看 | 日本精品视频在线 | www.com黄色| 91色国产| 亚洲成av人片在线观看www | 久久无码精品一区二区三区 | 国产码电影 | 国产一级片播放 | 99精品国产免费久久久久久下载 | 日本精品中文字幕在线观看 | 天天干天天干天天干 | 久久久久国产精品www | 丁香激情综合 | 亚洲最大免费成人网 | 不卡的一区二区三区 | 国产乱视频 | 操天天操| 91精品国产乱码久久 | 日本少妇久久久 | 亚洲一区二区精品 | 中文国产字幕在线观看 | 亚洲播放一区 | 日韩免费在线网站 | 91av视频播放| 特级毛片网站 | 欧美亚洲国产日韩 | 久久国产美女 | 欧美日韩精品免费观看视频 | www.色爱| 国产国产人免费人成免费视频 | av资源在线看 | 精品爱爱| 国产理论免费 | 九七视频在线 | 欧美日韩久久不卡 | 国产成人精品亚洲 | 久久综合久久久久88 | 在线电影av | 91视频首页 | 色网免费观看 | 亚洲综合激情网 | 人人爽人人舔 | 欧美成人久久 | 欧美日韩国语 | 国产成人精品一区二区三区网站观看 | 婷婷六月丁香激情 | 日本黄色a级大片 | 亚洲精欧美一区二区精品 | 五月婷婷综合网 | 特级西西人体444是什么意思 | 激情综合色综合久久综合 | 日韩在线观看视频网站 | 久久久久这里只有精品 | 99久久久成人国产精品 | 不卡的av电影在线观看 | 五月天久久久 | 97超碰人人 | 国内精品久久久久久久久久久 | 91精品天码美女少妇 | 久久男人中文字幕资源站 | 超碰999| 国产特黄色片 | 日韩xxx视频| 中文字幕视频在线播放 | 九九视频免费观看视频精品 | 国产不卡在线观看视频 | 99精品成人 | 韩国一区二区三区在线观看 | 在线电影播放 | 久久国产精品免费 | 久久久免费看 | 婷婷五月在线视频 | 啪啪免费观看网站 | 日韩精品在线观看av | 欧美日韩亚洲在线观看 | 日日草av | 亚洲h在线播放在线观看h | 99婷婷| 日韩中文字幕免费在线观看 | 久久国产高清视频 | 国产裸体永久免费视频网站 | 狠狠干天天操 | 天天操天天透 | 国产精品久久久久久99 | 欧美大片mv免费 | 在线免费观看麻豆视频 | 免费人成网| 精品一区 在线 | 精品在线播放 | 一级片黄色片网站 | 亚洲国产片色 | 五月开心激情网 | 久久久久久久久久电影 | 99在线视频播放 | www.国产在线 | 97人人澡人人爽人人模亚洲 | 日韩一区二区免费在线观看 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 日韩免费观看av | 91亚色视频| 日韩精品一区二区不卡 | 97涩涩视频 | 亚洲精品久久久久中文字幕m男 | 亚洲精品黄网站 | 午夜久操 | 男女激情免费网站 | 在线观看国产日韩 | 日韩欧美在线视频一区二区 | 精品国产精品久久一区免费式 | 久久午夜视频 | 久久这里有 | 亚洲第一区精品 | 天天插一插| 亚洲成av人影院 | 九九九九色 | 99视频在线免费播放 | 久久夜夜操 | 日韩女同av | 丁香婷婷激情五月 | 亚洲一区在线看 | 天天综合网久久综合网 | 91久久电影| 日韩av手机在线观看 | 国产成人久久av免费高清密臂 | 中文字幕 国产视频 | 精品国产一区二区三区久久久蜜臀 | 中文字幕在线影院 | 国产一二区在线观看 | 精品国产电影 | 免费观看全黄做爰大片国产 | 一级一片免费看 | 成人免费视频观看 | 国产在线观看,日本 | 久久久久综合 | 久久久精品网 | 国产剧在线观看片 | 国产精品久久久久久久久搜平片 | 亚洲国产99 | 久久污视频 | 中文字幕在线影院 | 爱干视频 | 超级碰碰碰碰 | 国产精品亚州 | 五月激情丁香婷婷 | 福利网在线 | 成人一区二区在线观看 | 天天插天天狠 | 成年人黄色大片在线 | 天天操天天吃 | 欧美一区二区在线 | 精品亚洲成人 | 999视频在线播放 | 91激情视频在线观看 | 99亚洲国产| 蜜臀av免费一区二区三区 | 午夜私人影院 | 欧美成人精品欧美一级乱 | 国产黄在线播放 | 成年人网站免费观看 | 97视频资源| 九九热只有这里有精品 | 亚洲精品美女在线观看播放 | 成人一级电影在线观看 | 97超碰在线视 | 毛片网站在线看 | 成人精品视频久久久久 | 国产97在线视频 | 999久久久免费视频 午夜国产在线观看 | 婷婷六月天在线 | 午夜av网站| 91精品在线观看入口 | 欧美一区二区视频97 | 高清av免费看 | 色窝资源 | 国产精品一区二区av影院萌芽 | 亚洲免费不卡 | 偷拍区另类综合在线 | 国产精品一区二区中文字幕 | 国产精品1区2区3区 久久免费视频7 | 中文字幕在线观看免费高清完整版 | 欧美另类交人妖 | 国产成人精品一区二区三区在线 | 欧美成人tv| 伊人久久精品久久亚洲一区 | 日韩一二三区不卡 | 国产成人精品久久 | 91日本在线播放 | 在线 影视 一区 | 超碰人人在 | 亚洲一二三在线 | 婷婷亚洲最大 | 亚洲人在线| 97精品国产97久久久久久久久久久久 | 国产原创在线 | 亚洲精品欧洲精品 | 婷婷日| 国产精品成人一区二区三区吃奶 | 午夜精品视频免费在线观看 | 手机av永久免费 | 久久精品久久久久 | 天天综合网 天天综合色 | 国产黑丝一区二区 | 98精品国产自产在线观看 | 521色香蕉网站在线观看 | 精品国产乱码久久 | 欧美精品久久人人躁人人爽 | 久久狠狠干 | 久久成人一区二区 | 91成人在线观看高潮 | 国产日韩在线播放 | a在线一区 | 国产一区二区视频在线 | 91毛片在线| 99国内精品久久久久久久 | 免费av在线网站 | 麻豆免费看片 | 日韩理论片在线 | 色视频在线观看 | 91看片在线播放 | 日韩视频精品在线 | 精品视频在线免费 | 美女视频黄免费的久久 | 中文字幕一区在线 | av中文天堂在线 | 五月的婷婷 | 九九九视频在线 | 国产亚州精品视频 | 96av在线视频| 日韩偷拍精品 | 国产精品理论视频 | 亚洲一区日韩在线 | 在线观看麻豆av | 99久久精品免费看 | 久久久毛片 | 又大又硬又黄又爽视频在线观看 | 亚洲日本va在线观看 | 97超碰国产精品女人人人爽 | 黄色在线免费观看网站 | 91麻豆精品国产91久久久久久久久 | 97成人精品区在线播放 | 超碰人人av | 日韩av影视 | 成人在线一区二区 | 丝袜+亚洲+另类+欧美+变态 | 97超碰资源总站 | 91大神在线看 | 欧美成人性战久久 | 欧美在线观看视频免费 | 中文字幕中文字幕在线中文字幕三区 | 成年人网站免费在线观看 | 亚洲高清在线观看视频 | 亚洲精品国产精品国自产观看 | 国产又粗又猛又色又黄网站 | 日韩美在线 | 亚洲一区二区视频在线 | 国产97在线播放 | 久久久精品在线观看 | 国产精品视频久久久 | 天天做日日爱夜夜爽 | 麻豆视频在线观看免费 | 精品国产一区二区三区男人吃奶 | 六月丁香激情综合色啪小说 | 中国一级片在线观看 | 久久婷婷一区二区三区 | 久久视频热| 视频一区久久 | 国产a级片免费观看 | 亚洲精品午夜一区人人爽 | 亚洲三区在线 | 欧美a级在线免费观看 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 日韩电影久久 | 色偷偷888欧美精品久久久 | 色网站免费在线观看 | 天天干天天射天天操 | 中文字幕 91 | 久久五月天色综合 | 色播亚洲婷婷 | 午夜精品久久久久久久99水蜜桃 | 成人午夜电影在线播放 | 狠狠狠操| aⅴ视频在线 | 中文字幕 第二区 | 99这里只有精品视频 | 国产伦精品一区二区三区无广告 | 国产精品久久久久久久电影 | 国产中文字幕av | 久久免费看视频 | 97操操操 | 在线影院 国内精品 | 国产精品精品 | 免费看黄在线看 | 精品久久久久久亚洲综合网 | 中文不卡视频 | 久视频在线 | 亚洲精品视频免费观看 | www操操| 中文字幕免费观看 | 久久久久久国产精品免费 | 99久久精品国产欧美主题曲 | 久久久久久毛片 | 男女拍拍免费视频 | 欧美午夜剧场 | 亚洲国产wwwccc36天堂 | 国产91在线看 | 亚洲精品高清视频 | 91香蕉视频黄色 | 国产精品美女www爽爽爽视频 | 欧美精品v国产精品 | 国产精品原创在线 | 国产一区私人高清影院 | av丝袜制服| 午夜精品久久久久久久爽 | 精品视频一区在线观看 | 人人射人人 | 天海翼一区二区三区免费 | 四虎成人免费影院 | 日本精品免费看 | 成人av中文字幕 | 四虎成人免费影院 | 亚洲综合成人专区片 | 国产视频 久久久 | 免费看国产曰批40分钟 | 婷婷久操| 久久新| 美女视频黄是免费的 | 国产精品九九九九九 | 91在线视频观看免费 | 丁香花中文字幕 | 久久黄色网址 | 日日夜夜中文字幕 | 午夜精品福利在线 | 国产精品久久久久久一区二区三区 | 亚洲精品乱码久久久久久 | 激情偷乱人伦小说视频在线观看 | 免费国产在线精品 | av丁香花 | 久久久久久久久久福利 | 一区二区三区四区精品 | 91av视频网 | 尤物九九久久国产精品的分类 | 国产精品免费麻豆入口 | 免费能看的av | 中文字幕在线观看一区 | 国产一区二区在线免费播放 | 天堂在线一区 | 久久久久久久亚洲精品 | 国产精品av在线 | 丁香婷婷深情五月亚洲 | 国产高清免费视频 | 国产精品va最新国产精品视频 | 亚洲视频资源在线 | 色婷婷综合久色 | 99日精品 | 最近中文字幕免费大全 | 国产麻豆成人传媒免费观看 | 在线观看视频黄 | 中文字幕 婷婷 | 久久免费美女视频 | 久久这里只有精品1 | 国产在线97 | 日韩精品不卡 | 日本成人免费在线观看 | 国产一级片不卡 | 国产精品五月天 | 在线中文字幕视频 | 国产偷国产偷亚洲清高 | 日韩videos高潮hd | 中文字幕免费不卡视频 | 久久艹在线 | 五月天久久精品 | www黄色av | 国产精品久久久视频 |