WEB开发网
开发学院软件开发C语言 c#扩展方法奇思妙用高级篇四:对扩展进行分组管理... 阅读

c#扩展方法奇思妙用高级篇四:对扩展进行分组管理

 2010-09-30 20:56:53 来源:WEB开发网   
核心提示: 代码仅是为了说明怎么分组,没有实现,c#扩展方法奇思妙用高级篇四:对扩展进行分组管理(3),具体实现请参见本系列前面的文章,为了节省空间,我们改进后,方式二的显示效果如下:Equals、GetHashCode、ToString 实在去不了,很多代码都写成了一行,前面提到的第二条缺点

代码仅是为了说明怎么分组,没有实现,具体实现请参见本系列前面的文章。为了节省空间,很多代码都写成了一行。

前面提到的第二条缺点,我们改进后,方式二的显示效果如下:

c#扩展方法奇思妙用高级篇四:对扩展进行分组管理

Equals、GetHashCode、ToString 实在去不了,哪位朋友有好办法分享一下吧!不过这次把扩展方法的标志加上。实现比方式一麻烦一下:

 1     public class ChineseString
 2     {
 3         private string s;
 4         public ChineseString(string s) { this.s = s; }
 5         public string GetValue() { return s; }
 6     }
 7 
 8     public static class CheseStringExtension
 9     {
10         public static ChineseString AsChineseString(this string s) { return new ChineseString(s); }
11 
12         public static string ToSBC(this ChineseString cs) 
13         {
14             string s = cs.GetValue();//从ChineseString取出原string
15             char[] c = s.ToCharArray();
16             for (int i = 0; i < c.Length; i++)
17             {
18                 if (c[i] == 32) { c[i] = (char)12288; continue; }                
19                 if (c[i] < 127) c[i] = (char)(c[i] + 65248);
20             }
21             return new string(c);
22         }
23         public static string ToDBC(this ChineseString cs) { throw new NotImplementedException(); }
24         public static string GetChineseSpell(this ChineseString cs) { throw new NotImplementedException(); }
25     }

上一页  1 2 3 4 5 6  下一页

Tags:扩展 方法 奇思

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接