コード例 #1
0
    /// <summary>
    /// 复制(深拷贝)
    /// </summary>
    protected override void toCopy(BaseData data)
    {
        base.toCopy(data);

        if (!(data is RankToolData))
        {
            return;
        }

        RankToolData mData = (RankToolData)data;

        this.version = mData.version;

        if (mData.list != null)
        {
            if (this.list != null)
            {
                this.list.clear();
                this.list.ensureCapacity(mData.list.size());
            }
            else
            {
                this.list = new SList <RankData>();
            }

            SList <RankData> listT = this.list;
            if (!mData.list.isEmpty())
            {
                RankData[] listVValues = mData.list.getValues();
                for (int listVI = 0, listVLen = mData.list.length(); listVI < listVLen; ++listVI)
                {
                    RankData listV = listVValues[listVI];
                    RankData listU;
                    if (listV != null)
                    {
                        listU = (RankData)listV.clone();
                    }
                    else
                    {
                        listU = null;
                        nullObjError("listU");
                    }

                    listT.add(listU);
                }
            }
        }
        else
        {
            this.list = null;
            nullObjError("list");
        }
    }
コード例 #2
0
    /// <summary>
    /// 复制(潜拷贝)
    /// </summary>
    protected override void toShadowCopy(BaseData data)
    {
        base.toShadowCopy(data);

        if (!(data is RankToolData))
        {
            return;
        }

        RankToolData mData = (RankToolData)data;

        this.version = mData.version;
        this.list    = mData.list;
    }
コード例 #3
0
    /// <summary>
    /// 是否数据一致
    /// </summary>
    protected override bool toDataEquals(BaseData data)
    {
        if (!base.toDataEquals(data))
        {
            return(false);
        }

        RankToolData mData = (RankToolData)data;

        if (this.version != mData.version)
        {
            return(false);
        }

        if (mData.list != null)
        {
            if (this.list == null)
            {
                return(false);
            }
            if (this.list.size() != mData.list.size())
            {
                return(false);
            }
            SList <RankData> listT = this.list;
            SList <RankData> listR = mData.list;
            int listLen            = listT.size();
            for (int listI = 0; listI < listLen; ++listI)
            {
                RankData listU = listT.get(listI);
                RankData listV = listR.get(listI);
                if (listV != null)
                {
                    if (listU == null)
                    {
                        return(false);
                    }
                    if (!listU.dataEquals(listV))
                    {
                        return(false);
                    }
                }
                else
                {
                    if (listU != null)
                    {
                        return(false);
                    }
                }
            }
        }
        else
        {
            if (this.list != null)
            {
                return(false);
            }
        }

        return(true);
    }