コード例 #1
0
        public object GetVal(string key)
        {
            int           i             = 0;
            PKeyCharValue aTempTreeList = aPKeyTreeHeadList;
            int           iTempIndex    = aTempTreeList.IndexOfArray(key[i]);

            while (iTempIndex != NOTFOUND)
            {
                i++;
                if (i >= key.Length)
                {
                    aTempTreeList = (PKeyCharValue)aTempTreeList.aPKeyTreeList[iTempIndex];
                    break;
                }
                aTempTreeList = (PKeyCharValue)aTempTreeList.aPKeyTreeList[iTempIndex];
                iTempIndex    = aTempTreeList.IndexOfArray(key[i]);
            }
            if (iTempIndex == NOTFOUND)
            {
                return(null);
            }
            else
            {
                return(aTempTreeList.sValue);
            }
        }
コード例 #2
0
        public void SetVal(string key, object val)
        {
            int           i             = 0;
            PKeyCharValue aTempTreeList = aPKeyTreeHeadList;
            int           iTempIndex    = aTempTreeList.IndexOfArray(key[i]);

            while (iTempIndex != NOTFOUND)
            {
                i++;
                if (i >= key.Length)
                {
                    aTempTreeList = (PKeyCharValue)aTempTreeList.aPKeyTreeList[iTempIndex];
                    break;
                }
                aTempTreeList = (PKeyCharValue)aTempTreeList.aPKeyTreeList[iTempIndex];
                iTempIndex    = aTempTreeList.IndexOfArray(key[i]);
            }
            if (iTempIndex == NOTFOUND)
            {
                AddPrimaryKey(key, val);                //找不着就添加一个
            }
            else
            {
                aTempTreeList.sValue = val;
            }
        }