/// <summary> /// 复制(深拷贝) /// </summary> protected override void toCopy(BaseData data) { if (!(data is ActivityPartData)) { return; } ActivityPartData mData = (ActivityPartData)data; if (mData.datas != null) { if (this.datas != null) { this.datas.clear(); this.datas.ensureCapacity(mData.datas.size()); } else { this.datas = new IntObjectMap <ActivityData>(mData.datas.size()); } IntObjectMap <ActivityData> datasT = this.datas; if (!mData.datas.isEmpty()) { ActivityData[] datasVValues = mData.datas.getValues(); for (int datasVI = datasVValues.Length - 1; datasVI >= 0; --datasVI) { ActivityData datasV = datasVValues[datasVI]; if (datasV != null) { ActivityData datasU; if (datasV != null) { datasU = (ActivityData)datasV.clone(); } else { datasU = null; nullObjError("datasU"); } datasT.put(datasU.id, datasU); } } } } else { this.datas = null; nullObjError("datas"); } }