C#中的表达式和运算符、流程控制(for、while等)、字符串操作的常用方法、StringBuilder类、数组常用方法、显示转换与隐式转换、ArrayList类型数组的方法,排序遍历、冒泡排序等
关系运算符:
布尔运算符:
\t:跳到下一个制表位。
运算符的优先级:
if判断的基本用法:
Parse:用来处理数据之间的类型转换。
do....while....练习:
double Balance = 0, TargetBalance = 0, Rate = 0; int Year = 0; Console.WriteLine("请输入你需要存储的金额:"); Balance = double.Parse(Console.ReadLine()); Console.WriteLine("请输入你的目标收益:"); do { TargetBalance = double.Parse(Console.ReadLine()); if (TargetBalance <= Balance) { Console.WriteLine("输入目标收益有误,请重新输入!"); } } while(TargetBalance<=Balance); Console.WriteLine("请输入您的利率:"); Rate = double.Parse(Console.ReadLine()); do { Balance *= (1 + Rate); Year++; } while (Balance<TargetBalance); Console.WriteLine("你将在{0}年后,达到目标收益{1}元",Year,Balance);
for循环之求数字的阶乘:
/*阶乘练习:for循环练习*/ //for(; ; ) // { // Console.WriteLine("请输入你需要计算数字的阶乘:"); // int num = int.Parse(Console.ReadLine()); // int TargetNum = 1; // for (int i = 1; i <= num; i++) // { // TargetNum *= i; // } // Console.WriteLine("数字{0}的阶乘结果为:{1}", num, TargetNum); // }
for循环之九九乘法表练习:
for(int i = 1; i< 10; i++) { for(int j = 1; j <= i; j++) { Console.Write("{0}*{1}={2}\t",i,j,i*j); } Console.WriteLine(); }
foreach语句:
static void Main(string[] args) { string[] s = new string[] { "a,b,c,d,e,f,g" }; foreach (string item in s) { Console.WriteLine(item); } Console.ReadKey(); }
for和foreach总结:
for循环需给初值,步长,末值,foreach则不需要,它是自动遍历集合体中所有值
for循环可用于任何重复行为,foreach循环只能用于遍历
foreach循环遍历速度比for循环快
IsWhiteSpace用法:
用来判断字符是否为空格。
例:
char.IsWhiteSpace(c)
/*foreach语句练习:拆分单词*/ Console.WriteLine("请输入你语句:"); string s = Console.ReadLine(); Console.WriteLine("结果打印:"); foreach (char c in s) { if (char.IsWhiteSpace(c)) { Console.WriteLine(); } else { Console.Write(c); } } Console.ReadKey();
字符常用方法:
常用的转义字符:
字符串的比较:
compare可以进行重载即:
compare(字符串1,字符串2,布尔值)
布尔值为真则表示忽略大小写。
字符串的格式化:
String.Format({0:D3},5) //按照整数进行处理,保留三位整数。
字符串的截取:
用Substring来完成字符串首字母大写的练习:
//字符串的首字母大写处理 Console.WriteLine("请输入字符串:"); string s = Console.ReadLine(); string s1 = s.Substring(0,1).ToUpper(); string s2 = s.Substring(1).ToLower(); Console.WriteLine("首字母大写处理之后的字符串:"+s1+s2);
字符串的分割:
split切割字符串练习:
//字符串的分割练习 string s = "fdaf-fdsaf-r323f"; Console.WriteLine("需要切割的字符串为:"+s); string[] res = s.Split("-"); Console.WriteLine("通过按照-进行切分之后为:"); foreach (string i in res) Console.Write (i);
字符串的合并:
字符串的插入与填充:
字符串的删除:
字符串的修剪:
常用来取消用户名中的空格。
字符串的复制:
静态方法与非静态方法:
静态方法:通常的调用方式为关键字.方法名。如:string.copy()
非静态方法:通常调用方法为变量名.方法名。如:string.CopyTo(参数1...)
字符串的替换:
字符串的查找:
用法:
显示转换与隐式转换:
可进行隐式转换的原理:
当取值范围别需要转换的数据类型小的时候可以直接进行隐式转换。也即大瓶子装小瓶子。
当进行显示转换的时候,可能会出现范围溢出的情况,此时可以进行溢出检查。用checked关键字来完成:
显示转换的区别:
转换区别的演示:
StringBuilder类的存在意义:
StringBuilder类:
可变长字符串类型,可支持对字符串修改的操作,无需重复创建一个新的字符串对象。
使用方法:
即:StringBuilder 变量名 = new StringBuilder("http://www.baidu.com");
StringBuilder类常用的方法:
一维数组的遍历尽量使用:foreach()语句。
二维数组的声明:
二位数组常用方法:
GetLowerBound:获取数组指定维度的下限
GetUpperBound:获取数组指定维度的上限
索引查找元素:
BinarySearch方法:
查找元素首次现的索引值,采用了2分法的方式查找优于IndexOf()方法。可以优先使用。
Contains方法:
数组的排序方法:
Sort:升序排列。
Reverse:降序排列。
数组的长度一旦声明是不会发生改变的。
数组的拆分与合并:
数组合并:
数组拆分:
ArrayList类动态数组(集合):
ArrayList数组元素的添加:
ArrayList类常用方法:
ArrayList类添加元素:
Add和AddArray的使用:
ArrayList类删除元素:
清除所有元素的方法为:Clear()
ArrayList类的遍历与查找
自动弹出命名空间的键位:Ctrl+Alt+F10会弹出是否引入命名空间。
数组遍历与查找的使用:
BinarySearch查找方式:当数组中的元素类型各不相同时将产生报错。
冒泡法:
冒泡排序用法: