C# String小技巧

  NET string 类是相当广泛的,然而仍有一些String函数是缺失的或者不是很明显,在使用Net String时,这里提供几个小技巧.
   

    用重复的字符填充一个 String

    为了用重复的字符填充一个字符串, 使用string 类的构造函数.例如:用20个(*)填充一个字符串.
   
string  s  =   new   string ' * ' 20  );

    检查空字符串

    一个空字符串可能表现为空引用或者空字符串( String.Empty或""),如果你试图对一个空字符串调用方法,可能会发生异常.因此,要检查空字符串,你应该使用Net2.0中的静态函数        String.IsNullOrEmpty;
String.IsNullOrEmpty( s )

String.Empty vs. ""? 并不重要

在网上关于用string.Empty还是""表示空字符已经有很多争论了,然而测试表明,这里差别很小,即使创建10亿个空字符串时.

反转字符串

这里有很多算法在反转字符串方面. 下面是一个很好的方法,不论是作用在Unicode还是字符上:

static   public   string  Reverse(  string  s )
{
    
char[] charArray = s.ToCharArray();
    Array.Reverse( charArray );
    
return new string( charArray );
}

字符串比较

由于字符串引用可能是空的,所以在比较字符串时,你应该避免使用"=="或者成员比较函数.代替的是使用静态的String.Compare方法.这个方法有个优势就是它能处理空字符串引用,忽略字符串大小写.也可以在特定文化背景下使用.

if  (String.Compare( s1, s2,  true  )  ==   0 )

转换字符串为数字类型

每一种数字类型如: int, Int32, double, 等等,都有一个静态TryParse 方法来转换一个字符串而不抛出异常.这个方法返回一个bool无论这个字符串是否包含在这个特殊的数字类型中.例如:

string  s  =   " 42″;
int  i;
int .TryParse( s,  out  i );

IndexOf 忽略大小写

字符串的 IndexOf 方法是对大小写敏感的.幸运的是. 这个Globalization 命名空间下包含 CompareInfo 类,它包含一个对大小写敏感的 IndexOf 方法. 例如:

     using  System.Globalization;

    
string  s1  =   " C# is a GREAT programming language. " ;
    
string  s2  =   " great " ;

    CompareInfo Compare 
=  CultureInfo.InvariantCulture.CompareInfo;
    
int  i  =  Compare.IndexOf( s1, s2, CompareOptions.IgnoreCase );

转载于:https://www.cnblogs.com/smallfa/archive/2008/03/17/1109147.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值