C#中关于字符串和类型转换的一些注意点

来源:互联网 发布:李兴华java实战经典 编辑:程序博客网 时间:2024/06/05 11:16
Cast(类型转换):只有在内存存储上存在交集的的类型才能进行cast,否则不行。比如int和string就不行。

不存在交集的类型,必须使用Convert类提供的方法或者自定义方法进行转换。

Cast:考虑数据类型的转换。
Convert:考虑数据意义的转换。
enum Gender { Male,Female,Unknown};Gender g1=Gender.Male;

</pre>枚举的意义在于限定变量的取值范围。函数可变参数:在参数前添加params:params参数必须是形参表中的最后一个参数。<pre name="code" class="csharp">static void Fn(params string[] values);string [] s={"a","b","c"};Fn(s);Fn("aa","bb","cc");



函数重载:
函数名一致,但是参数类型、参数个数,至少有一个不相同。与返回类型/是否有返回值无关。


字符串的处理:
C#中字符串的一个重要特性:不可变性。字符串一旦声明就不再变化。只能通过下标索引读取,不能修改。
修改:
先转换成char数组(s.ToCharArray()),修改后,把char数组转换成新的字符串(string ss=new string(char[])。

string类型时引用类型。

string s1="hello";string s10=s1; //s10指向"hello"s1=new string("hahahah"); //s1指向了"hahahah",s10还是指向“hello"

字符串比较:
==比较:  完全相等比较

equals比较:可以添加规则比较

bool b="abc".equals("ABC",StringComparson.OrdinalIgnoreCase); //b=TrueStringComparson.OrdinalIgnoreCase:忽略大小写进行比较


字符串分割:
Split函数,可以附加StringSplitOptions options:分割规则参数.
string s1="aa,bb,cc|dd|ee";string[] strs1=s1.Split(','); //单个分隔符进行分割string[] strs2=s1.Split(',','|'); //多个分隔符进行分割StringSplitOptions.RemoveEmptyEntries:移除结果中的空白字符串,连续多个分隔符会分割出空白字符串





0 0