1、引用类型与值类型
->文件的复制与快捷方式的复制
->关于内存,可以以后
int[] nums = {1,2};
Console.WriteLine(nums.GetType().BaseType());//System.Array;
2、垃圾回收
3、静态与非静态
->如何定义静态成员与静态类
->如何调用静态方法等
4、模仿,复写
->找一个对象,帮你做事
->看源码,开源社区
5、异常
->如何捕获异常
try-catch
try-catch-finally
try-finally
->托管与非托管 托管只能管理本机
->.Net Framework
CLR、CTS、类库
->由CLR管理的代码就是托管的,否则就是非托管的(File.Create)
->如何抛出异常
->异常也是一类,需要抛出一个异常就要new
->throw运算符,抛出异常
==========================================================
string 的构造方法
1、string str1 = new string(char[] chs);
2、string str2 = new string('a',7);
string 常用的属性(Length、Empty(常量))
Length 与数组类似
那么这个[]就不叫“下表”,"索引"
常用的方法(索引的使用、ToCharArray)
string str = stirng.Empty;
str=null;//两种写法有区别,关于堆内存
string.IsNullOrEmpty(str);
堆内存中有几个对象?
既然是不可变的,那么多个字符串,结果相同的时候,就没必要每次都生成新的对象
字符串拘留池(暂存池)
由于有字符串拘留池的存在,如果代码中有大量的字符串的值相同
那么他们都指向同一个对象,整个代码中只创建一个对象
char[] ch = { '1','2'};
string str3 = "12";
string str4 = new string(ch);//因为new了,所以会开创新的内存空间
string str1 = "123";
string str2 = "123";
str1 += "哈哈哈";
===========================================
字符串的处理
1、比较
->最简单的方法 ==
->Equals方法
->静态比较方法
->string.Equals(str1,str2,StringComparison.OrdinalIgnoreCase);
->非静态比较方法
->str1.Equals(str2,StringComparison.OrdinalIgnoreCase);
比较顺序
->比较每一位的Unicode码,比较规则(字典码)
Console.WriteLine(25105); ->输出 25105
Console.WriteLine((char)25105); ->输出 汉字"我"
int string.Compare(string str1,string str2)
str1 > str2 1
str1 = str2 0
str1 < str2 -1
2、修整
Trim方法,修整字符串首尾空格,并将新的字符串返回
Trim(params char[] chs),去除字符数组中出现的字符
-> string content1 = "[你好]";
string content2 = "【你好】";
char[] chs = { '[', '】' };
Console.WriteLine(content1.Trim(chs));
Console.WriteLine(content2.Trim(chs));
TrimEnd 去掉右边的
TrimStart 去掉左边的
3、检索
增加
Insert(插到哪里,什么东西);
移除
Remove();删除此字符串中从指定位置到最后位置的所有字符。
Remove(int start,int count);从此实例中的指定位置开始删除指定数目的字符。
查找
Contains(“需要查找的字符串”);
IndexOf()方法;string str = "abcdefgeefg";
int i = str.IndexOf('e', 9);
4、分割与合并
分割
string str = "I am a student ! I am studying DotNet program.";
第一种方法string[] strs = str.Split(' ', '!', '.');
第二种方法string[] strs = str.Split(new char[] { ' ', '!', '.' }, StringSplitOptions.RemoveEmptyEntries);
合并
string[] strs = { "1", "2", "3", "4", "5", "6" };
string s = string.Join("-", strs);
5、格式化
string str = string.Format("错误信息是:{0},时间:{1}", ex.Message, DateTime.Now);
Console.WriteLine(str);
==================================================
StringBuilder
常用方法Append、AppendLine、AppendFormat
StringBuilder builder = new StringBuilder();
builder.Append("1");
builder.Append("2");
builder.AppendLine("3");
builder.Append("3\n");
builder.AppendLine("4");
builder.AppendFormat("{0}{1}{2}", "^", "_", "^");
转载于:https://www.cnblogs.com/wiewookahn/archive/2012/05/27/2520352.html