コード例 #1
0
        /** 输出数据列表 */
        public static void printDataList <T>(SList <T> list) where T : BaseData
        {
            StringBuilder sb = StringBuilderPool.create();

            T data;

            for (int i = 0, len = list.size(); i < len; i++)
            {
                data = list.get(i);

                sb.Append(i);
                sb.Append(":");

                if (data == null)
                {
                    sb.Append("null");
                }
                else
                {
                    sb.Append(data.toDataString());
                }

                sb.Append("\n");
            }

            Ctrl.print(StringBuilderPool.releaseStr(sb));
        }
コード例 #2
0
        /** 获取名为name的子组 */
        public SList <XML> getChildrenByName(string name)
        {
            SList <XML> list = new SList <XML>();

            XML[] values = _children.getValues();
            XML   v;

            for (int i = 0, len = _children.size(); i < len; ++i)
            {
                if ((v = values[i])._name.Equals(name))
                {
                    list.add(v);
                }
            }

            return(list);
        }
コード例 #3
0
        private static void onSecond()
        {
            BaseThread[] values = _threadList.getValues();

            for (int i = 0, len = _threadList.size(); i < len; ++i)
            {
                values[i].check();
            }
        }
コード例 #4
0
ファイル: SSet.cs プロジェクト: shineTeam7/home3
        /** 添加一组 */
        public void addAll(SList <K> list)
        {
            if (list.isEmpty())
            {
                return;
            }

            K[] values = list.getValues();

            for (int i = 0, len = list.size(); i < len; ++i)
            {
                add(values[i]);
            }
        }
コード例 #5
0
ファイル: GridContainer.cs プロジェクト: shineTeam7/home3
        /// <summary>
        /// 设置格子数据
        /// </summary>
        /// <param name="list">数据列表</param>
        public void setDataList <T>(SList <T> list)
        {
            SList <object> temp;

            (temp = _dataList).clear();

            T[] values = list.getValues();
            for (int i = 0, len = list.size(); i < len; i++)
            {
                temp.add(values[i]);
            }

            clearDataCache();

            doSetDataList();
        }
コード例 #6
0
ファイル: ACStringFilter.cs プロジェクト: shineTeam7/home3
        public bool init(SList <string> keyWords)
        {
            clear();

            if (keyWords != null && !keyWords.isEmpty())
            {
                string[] values = keyWords.getValues();
                string   v;

                for (int i1 = 0, len = keyWords.size(); i1 < len; ++i1)
                {
                    v = values[i1];

                    if (v == null || (v = StringUtils.trim(v)).Length == 0)
                    {
                        continue;
                    }

                    DFANode currentDFANode = dfaEntrance;
                    for (int i = 0; i < v.Length; i++)
                    {
                        char _c = v[i];
                        // 逐点加入DFA
                        char    _lc   = toLowerCaseWithoutConfict(_c);
                        DFANode _next = currentDFANode.dfaTransition.get(_lc);
                        if (_next == null)
                        {
                            _next = new DFANode();
                            currentDFANode.dfaTransition.put(_lc, _next);
                        }
                        currentDFANode = _next;
                    }
                    if (currentDFANode != dfaEntrance)
                    {
                        currentDFANode.isTerminal = true;
                    }
                }
            }

            buildFailNode();
            return(true);
        }
コード例 #7
0
ファイル: AssetPoolControl.cs プロジェクト: shineTeam7/home3
            private void onLoadComplete()
            {
                _loadState = LoadState_Complete;

                Action[] values = _callFuncs.getValues();

                for (int i = 0, len = _callFuncs.size(); i < len; ++i)
                {
                    try
                    {
                        values[i]();
                    }
                    catch (Exception e)
                    {
                        Ctrl.errorLog(e);
                    }

                    values[i] = null;
                }

                _callFuncs.justClearSize();
            }
コード例 #8
0
        /// <summary>
        /// 转文本输出
        /// </summary>
        protected override void toWriteDataString(DataWriter writer)
        {
            writer.writeTabs();
            writer.sb.Append("name");
            writer.sb.Append(':');
            writer.sb.Append(this.name);

            writer.writeEnter();
            writer.writeTabs();
            writer.sb.Append("type");
            writer.sb.Append(':');
            writer.sb.Append(this.type);

            writer.writeEnter();
            writer.writeTabs();
            writer.sb.Append("style");
            writer.sb.Append(':');
            writer.sb.Append(this.style);

            writer.writeEnter();
            writer.writeTabs();
            writer.sb.Append("children");
            writer.sb.Append(':');
            writer.sb.Append("List<UIObjectData>");
            if (this.children != null)
            {
                SList <UIObjectData> childrenT = this.children;
                int childrenLen = childrenT.size();
                writer.sb.Append('(');
                writer.sb.Append(childrenLen);
                writer.sb.Append(')');
                writer.writeEnter();
                writer.writeLeftBrace();
                for (int childrenI = 0; childrenI < childrenLen; ++childrenI)
                {
                    UIObjectData childrenV = childrenT.get(childrenI);
                    writer.writeTabs();
                    writer.sb.Append(childrenI);
                    writer.sb.Append(':');
                    if (childrenV != null)
                    {
                        childrenV.writeDataString(writer);
                    }
                    else
                    {
                        writer.sb.Append("UIObjectData=null");
                    }

                    writer.writeEnter();
                }
                writer.writeRightBrace();
            }
            else
            {
                writer.sb.Append("=null");
            }

            writer.writeEnter();
            writer.writeTabs();
            writer.sb.Append("intArgs");
            writer.sb.Append(':');
            writer.sb.Append("Array<int>");
            if (this.intArgs != null)
            {
                int[] intArgsT   = this.intArgs;
                int   intArgsLen = intArgsT.Length;
                writer.sb.Append('(');
                writer.sb.Append(intArgsLen);
                writer.sb.Append(')');
                writer.writeEnter();
                writer.writeLeftBrace();
                for (int intArgsI = 0; intArgsI < intArgsLen; ++intArgsI)
                {
                    int intArgsV = intArgsT[intArgsI];
                    writer.writeTabs();
                    writer.sb.Append(intArgsI);
                    writer.sb.Append(':');
                    writer.sb.Append(intArgsV);

                    writer.writeEnter();
                }
                writer.writeRightBrace();
            }
            else
            {
                writer.sb.Append("=null");
            }

            writer.writeEnter();
            writer.writeTabs();
            writer.sb.Append("strArgs");
            writer.sb.Append(':');
            writer.sb.Append("Array<string>");
            if (this.strArgs != null)
            {
                string[] strArgsT   = this.strArgs;
                int      strArgsLen = strArgsT.Length;
                writer.sb.Append('(');
                writer.sb.Append(strArgsLen);
                writer.sb.Append(')');
                writer.writeEnter();
                writer.writeLeftBrace();
                for (int strArgsI = 0; strArgsI < strArgsLen; ++strArgsI)
                {
                    string strArgsV = strArgsT[strArgsI];
                    writer.writeTabs();
                    writer.sb.Append(strArgsI);
                    writer.sb.Append(':');
                    writer.sb.Append(strArgsV);

                    writer.writeEnter();
                }
                writer.writeRightBrace();
            }
            else
            {
                writer.sb.Append("=null");
            }

            writer.writeEnter();
        }
コード例 #9
0
        /// <summary>
        /// 是否数据一致
        /// </summary>
        protected override bool toDataEquals(BaseData data)
        {
            UIObjectData mData = (UIObjectData)data;

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

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

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

            if (mData.children != null)
            {
                if (this.children == null)
                {
                    return(false);
                }
                if (this.children.size() != mData.children.size())
                {
                    return(false);
                }
                SList <UIObjectData> childrenT = this.children;
                SList <UIObjectData> childrenR = mData.children;
                int childrenLen = childrenT.size();
                for (int childrenI = 0; childrenI < childrenLen; ++childrenI)
                {
                    UIObjectData childrenU = childrenT.get(childrenI);
                    UIObjectData childrenV = childrenR.get(childrenI);
                    if (childrenV != null)
                    {
                        if (childrenU == null)
                        {
                            return(false);
                        }
                        if (!childrenU.dataEquals(childrenV))
                        {
                            return(false);
                        }
                    }
                    else
                    {
                        if (childrenU != null)
                        {
                            return(false);
                        }
                    }
                }
            }
            else
            {
                if (this.children != null)
                {
                    return(false);
                }
            }

            if (mData.intArgs != null)
            {
                if (this.intArgs == null)
                {
                    return(false);
                }
                if (this.intArgs.Length != mData.intArgs.Length)
                {
                    return(false);
                }
                int[] intArgsT   = this.intArgs;
                int[] intArgsR   = mData.intArgs;
                int   intArgsLen = intArgsT.Length;
                for (int intArgsI = 0; intArgsI < intArgsLen; ++intArgsI)
                {
                    int intArgsU = intArgsT[intArgsI];
                    int intArgsV = intArgsR[intArgsI];
                    if (intArgsU != intArgsV)
                    {
                        return(false);
                    }
                }
            }
            else
            {
                if (this.intArgs != null)
                {
                    return(false);
                }
            }

            if (mData.strArgs != null)
            {
                if (this.strArgs == null)
                {
                    return(false);
                }
                if (this.strArgs.Length != mData.strArgs.Length)
                {
                    return(false);
                }
                string[] strArgsT   = this.strArgs;
                string[] strArgsR   = mData.strArgs;
                int      strArgsLen = strArgsT.Length;
                for (int strArgsI = 0; strArgsI < strArgsLen; ++strArgsI)
                {
                    string strArgsU = strArgsT[strArgsI];
                    string strArgsV = strArgsR[strArgsI];
                    if (strArgsU != strArgsV)
                    {
                        return(false);
                    }
                }
            }
            else
            {
                if (this.strArgs != null)
                {
                    return(false);
                }
            }

            return(true);
        }