大杂烩
一、类型转换
字符串转整形:
int a = int.Parse(""); //不能转换null
int b = Convert.ToInt32(""); null转为0 四舍五入(.5的话只对奇数进行四舍五入)
// char.IsLetter 判断是否是数字
比较是否相等:
// if(str == "abc")
// if(String.Equals(str,"abc"))
// if(String.Compare(str,"abc")==0)
获取对象地址:
GCHandle hander = GCHandle.Alloc(str1);
var pin = GCHandle.ToIntPtr(hander);
Console.WriteLine(pin);
二、自定义可以代替单个参数情况下不用重载的方法:
public static string testFunction(object obj) {
if (obj.GetType() == typeof(String)) {//判断类型
return (String)obj;
}else if(obj.GetType() == typeof(string[])){
string tempString = "";
foreach (object obje in (string[])obj) {
tempString += obje;
}
return tempString;
}
return null;
}
三、字符串格式化
string str = String.Format("{0:C}\n"+ "{0:D}\n" + "{0:E}\n" + "{0:F}\n" + "{0:G}\n" + "{0:N}\n" + "{0:P}\n" + "{0:X}\n",21);
输出:¥21.00 21 2.100000E+001 21.00 21 21.00 2,100.00% 15
三、字符串截取
str.Substring(下标,长度)
四、字符串分割与合并与插入
string str = "12-345=67-89";
String[] strArray = str.Split('-','=');//参数为字符或字符数组
foreach (var obj in strArray) {
Console.WriteLine(obj);
}
Console.WriteLine(String.Concat(strArray));//直接合并
Console.WriteLine(String.Join("++",strArray));//加分隔符合并
Console.WriteLine(String.Join("++", strArray).Insert(2,"aaa"));//插入
五、字符串填充
String str = "123";
Console.WriteLine(str.PadLeft(10,'0'));//输出0000000123
六、字符串移除
str.Remove(下标,长度)//移除下标以后的数据(包括下标位置)
七、字符串修剪 public String Trim(params char[] trimChars);可变参数个数 (‘1’,‘2’)<=> char[] ch = { '1', '2' };(ch)<=>("12".ToCharArray())
str.Trim()//删除头部和尾部的空格,用于输入框字符串的处理
八、字符串复制
String str = "0123456789";
//Copy 是静态方法(类方法)
Console.WriteLine(String.Copy(str));
//Copy非静态方法(实例方法)
char[] ch = new char[20];
str.CopyTo(4, ch, 0, 3);//返回void类型 (copy起始下标,目标对象,目标对象起始下标,copy长度)
Console.WriteLine(ch);
九、字符串替换
str.Replace('9', '0')//(old,new)
十、字符串查找
str.IndexOf("345") 返回-1 表示不不包含 返回int类型
checked 检查异常