马上加入IBC程序猿 各种源码随意下,各种教程随便看! 注册 每日签到 加入编程讨论群

C#教程 ASP.NET教程 C#视频教程程序源码享受不尽 C#技术求助 ASP.NET技术求助

【源码下载】 社群合作 申请版主 程序开发 【远程协助】 每天乐一乐 每日签到 【承接外包项目】 面试-葵花宝典下载

官方一群:

官方二群:

通过扩展方法对数组进行的一些扩展(一):连接, 反转

  [复制链接]
查看5121 | 回复5 | 2013-3-1 11:17:19 | 显示全部楼层 |阅读模式
本帖最后由 hebutyll 于 2013-3-4 15:06 编辑

在写js代码的时候发现js里面数组的方法很丰富,而相比之下C#里面有一些常用的方法却没有,作为初学者,就当是练习,写了一些扩展方法,方便以后使用。这是最先想到的两个,等以后慢慢丰富。同时也希望能够得到高手的指点,不胜感激
[C#] 纯文本查看 复制代码
/// <summary>
        /// 将Array输出为中间用字符连接的字符串
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="originArray">原数组</param>
        /// <param name="conStr">连接分隔符</param>
        /// <returns>输出的字符串</returns>
        public static string Join<T>(this T[] originArray, string conStr)
        {
            int length = originArray.Length;
            if (length == 0)
            {
                return "";
            }
            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < length; i++)
            {
                sb.Append(originArray[i].ToString() + conStr);
            }
            return sb.Remove(sb.Length - 1, 1).ToString();
        }

        /// <summary>
        /// 将原数组实现反转
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="originArray">原数组</param>
        /// <returns>反转之后的新数组</returns>
        public static T[] Reverse<T>(this T[] originArray)
        {
            int length = originArray.Length;
            if (length == 0 || length == 1)
            {
                return originArray;
            }

            T temp = default(T);

            for (int i = 0; i < length / 2 - 1; i++)
            {
                temp = originArray[length - i - 1];
                originArray[length - i - 1] = originArray[i];
                originArray[i] = temp;
            }

            return originArray;
        }

ibcadmin | 2013-3-1 12:08:27 | 显示全部楼层
挺好的!好贴就要顶!
C#论坛 www.ibcibc.com IBC编程社区
C#
C#论坛
IBC编程社区
hebutyll | 2013-3-1 12:17:24 | 显示全部楼层
ibcadmin 发表于 2013-3-1 12:08
挺好的!好贴就要顶!

谢谢啊,,一起多交流
IoveBC | 2013-3-1 17:44:45 | 显示全部楼层
饿,这个函数的定义数组的代码在哪里?我怎么没有看见?
hebutyll | 2013-3-4 09:34:31 | 显示全部楼层
IoveBC 发表于 2013-3-1 17:44
饿,这个函数的定义数组的代码在哪里?我怎么没有看见?

上面的方法是对数组的扩展,添加这些方法之后,在外面可以直接对数组进行这些方法的调用。不太明白您所说的“定义数组的代码”是什么意思?
chao2332601 | 2013-6-16 01:36:15 | 显示全部楼层
谢谢分享!!!
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则