重构老大的代码,需要一点点信心

[ 619 查看 / 1 回复 ]

老大写了方法交由偶调用,发现还是有可以 重构 的地方:
  1.         /// <summary>
  2.         /// 解析表达式的参数
  3.         /// </summary>
  4.         /// <param name="Express">表达式</param>
  5.         /// <returns>参数列表</returns>
  6.         public List<string> GetExpressParams(string Express)
  7.         {
  8.             char[] SplitFilter = new char[] { '(', ')', ',' };
  9.             string[] buffer = Express.Split(SplitFilter);
  10.             List<string> ParamsList = new List<string>();

  11.             for (int i = 1; i < buffer.Length; i++)
  12.             {
  13.                 if (!string.IsNullOrEmpty(buffer[i]))
  14.                 {
  15.                     ParamsList.Add(buffer[i]);
  16.                 }
  17.             }

  18.             return ParamsList;
  19.         }
复制代码
TOP

  1. private static IEnumerable<string> GetExpressParams(string Express)
            {
                string[] stringArray = Express.Split('(', ')', ',');
                foreach (var item in stringArray)
                    if (String.IsNullOrEmpty(item))
                        yield return item;
            }
            private static List<string> GetSplitParams(string Express)
            {
                return new List<string>(CalcPackage.GetExpressParams(Express));
            }
复制代码
如果调用方可以接受 IEnumerable<string> 这个类型,则 更方便了
TOP