5313人加入学习
(36人评价)
Unity商业游戏底层资源加载框架(Unity2018.1)

更新完成,更新时间2018-12-26

价格 ¥ 350.00
该课程属于 Unity - A计划(永久有效期) 请加入后再学习

移动节点至头部,不需要在最后判断Tail是否为空.

if (pNode == Tail) Tail = pNode.prev;这一句已经判断过了.

[展开全文]

/// <summary>
    /// 把某个节点移到头部
    /// </summary>
    /// <param name="pNode"></param>
    public void MoveToHead(DoubleLinkedListNode<T> pNode)
    {
        if (pNode == null || pNode == Head)
            return;

        if (pNode.prev == null && pNode.next == null)
            return;

        if (pNode == Tail)
            Tail = pNode.prev;

        if(pNode.prev != null)
            pNode.prev.next = pNode.next;

        if (pNode.next != null)
            pNode.next.prev = pNode.prev;

        pNode.prev = null;
        pNode.next = Head;
        Head.prev = pNode;
        Head = pNode;

        //这里不对
        if (Tail == null)
            Tail = Head;
    }

 

//最后一句代码有误吧,想不出例子可以证明(Tail == null)

[展开全文]

实现删除某个节点的方法

实现移动某个节点到头部的方法

[展开全文]