C#入门总结第一章(语言基础)
1、 数据类型
C#有两种数据类型:值类型(用于存储值)和引用类型(用于存储对实际数据的引用);
(1)值类型:简单类型、枚举类型、结构类型;
(2)引用类型:class类型、接口类型、数组类型、委托类型;
2、装箱和拆箱
(1)装箱:将值类型转换成引用类型;
(2)拆箱:将引用类型转换成值类型;
例子:int i = 1;//变量赋值
object o = i;//装箱,将i装箱
int j = (int)o;//拆箱j=1;
3、 常量和变量
(1) 常量:声明常量要在类型前面加const关键字;
Public const int num=24;其中的num就是常量;
(2) 变量:声明变量必须符合标识符命名规则;
Int i=1;i就是变量,变量只能保持一种类型的值;
4、 类型转换
(1) 隐式转换:隐式类型转换是指不简盟声明就能进行的转换;
例如:int i= 123;
decimal money=i;
float f=l ;
(2) 显示转换:显武类型转换也可以称为强制类型转换;
例如:float f = 123.45
Int i =Convert .Tolnt32
5、 运算符及表达式
C#提供了大量的运算符,这些运算符指定在表达式中执行哪些操作符号 , 表达式是可以计算且结 果为单个值、对象、 方法或命名空间的代码片段;
表达式可以使用运算符,而运算符又可以将其他表达式用作参数,或者使用方法调用,而方法调 用的参数又可以是其他方法的调用;
(1)算术运算符和算术表达式
<1> + 加法运算符 ,操作数为二元运算符,表达式为3+4;
<2> - 减法运算符, 操作数为二元运算符, 表达式为3-4;
<2> * 乘法运算符, 操作数为二元运算符, 表达式为3*4;
<2> / 除法运算符, 操作数为二元运算符, 表达式为3/4;
<2> % 模块运算符(取余数), 操作数为二元运算符, 表达式为3%4;
(2)关系运算符和关系表达式
<1> == 相等运算符 ,操作数为二元运算符,表达式为3==4,值false;
<2> != 不等于运算符 ,操作数为二元运算符,表达式为3!=4,值true;
<3> < 小于运算符 ,操作数为二元运算符,表达式为3<4,值true;
<4> > 大于运算符 ,操作数为二元运算符,表达式为3>4,值false;
<5> <= 小于等于运算符 ,操作数为二元运算符,表达式为3<=4,值true;
<5> >= 大于等于运算符 ,操作数为二元运算符,表达式为3>=4,值false;
(3) 条件运算符
条件运算符(?:),根据布尔型表达式的值返回两个值中的一个值,表达式:
A?B:C 如果条件为true,计算B,为false计算C;
6、 字符串处理
(1) 比较字符串
String类提供了一系列的方法用于字符串的比较,如:Compare方法,Equals方法、StartsWith方法和EndsWith方法。
//CompareTo 方法用于比较两个 字符串是否相等;
//如果参数的值与此实例相等,则返回0;如果此实例大于参数的值,则返回1,否则返回-1;
string s1 = "abc";
int m1 = s1.CompareTo("abc");
int m2 = s1.CompareTo("ab");
int m3 = s1.CompareTo("abcd");
//代码执行后,m1的值0,m2的值为1,m3的值为-1;
//Equals 方法是确定两个 String 对象是否具有相同的值;
//如果参数的值与此实例相同,则为true:否则为 false . 例如:
string e1 = "abC",e2="abc",e3="abC";
bool b1 = e1.Equals(e2);//返回值为false
bool b2 = e1.Equals(e3);//返回值为true
(2)定位字符及子串
定位字符串中某个字符或子串第一次出现的位置使用IndexOf方法;
//其中,参数为要定位的字符或子串,如果找到该字符,
//则为参数值的索引位置,从0开始:如果 未找到该字符,
//则为-l,如果参数为Empty,则返回值为0 例如:
string str1 = "abcd";
int t1 = str1.IndexOf("b");//值为1;
int t2 = str1.IndexOf("cd");//值为2
int t3 = str1.IndexOf("");//值为0
int t4 = str1.IndexOf("w");//值为-1
(3)格式化字符串
Format将指定的string中的格式替换为指定的Object实例:
string st1 = string.Format("{0:C}", -123.45678);//str1输出值为¥-123.46
string st2 = string.Format("{0:D}", DateTime.Now);
Console.WriteLine(st1);
Console.WriteLine(st2);
(4)//截取字符串Substring方法可以从指定字符串中截取子串,格式如下:
string.Substring(Int32, Int32);
字符串从指定的字符位置开始且具有指定的长度,第1个参数表示子串的起始位置 ,第2个参数表示子字符串的长度,例如:
string sr = "Hello World!";
string sr1 = sr.Substring(0, 5);//输出值为Hello;
(5)分裂字符串
Split方法可以把一个字符串按照某个分隔符分裂成一系列小的字符串,格式如下:
String[] Split(Char[]);
其中,参数为分隔字符串的分隔符数组。例如:
//string str = "Hello,world!";
//string[] split = str.Trim().Split(new Char[] { ',', '!' });
//foreach (string s in split)
//{
// if (s.Trim() != "")
// {
// Console.WriteLine(s);
// }
//}
//输出结果为Hello
//world
(6)插入和填充字符串
1.插入字符串
//Insert()方法用于在一个字符串的指定位置插入另一个字符串,从而构造一个新的串,如下
//String Insert(Int,String);
//其中,第一个参数指定所要插入的位置,索引从0开始;第二个参数指定要插入的字符串;例如:
//string str1 = "This is a girl";
//str1 = str1.Insert(10, "beautiful ");
//Console.WriteLine(str1);
//执行结果:str1的值为:This is a beautiful girl
(7)填充字符串
通过使用 PadLeft/PadRight方法添加指定数量
第1个参数指定了填充后的字符串长度,第2个参数指定所要填充的字符。第2个参数可 以省略,如柴省略,则填克空格符号.例如:
string st = "Hello World!";
string st1=st.PadLeft(15 ,'@');
string st2=st.PadRight(15,'@');
执行结果:st1="@@@Hello World!";st2="Hello World!@@@";
(8)删除字符串
Remove()方法用于在一个字符串的指定位置删除指定的字符,格式如下String Remove(int,int);第一个参数指定开始删除的位置,索引从0开始,第二个参数指定要删除的字符数量;
String Trim(char[]); 从字符串的开头和结尾处移除空白
String TrimStart(char[]); 移除在开头指定的字符
String TrimEnd(char[]); 移除尾部指定的字符
string ss = "--*123*--";
string ss1=ss.TrimStart(new char[]{'-','*'});
string ss2 = ss.TrimEnd(new char[] { '*', '-' });
执行结果为:ss1="123*--";ss2="--*123";
(9)复制字符串
Copy方法可以吧一个字符串复制到另一个字符串中格式如下:
//string str = "123456";//源字符串
//string newstr = string.Copy(str);//目标字符串
//执行结果newstr的值为123456;
(10)替换字符串
//Replace方法可以替换掉一个字符串中的某些特定字符或者子串,格式如下:
string str = "123abc";
str = str.Replace("abc", "efg");
//执行结果为str="123efg";
-------------------------------------------理解不对的地方还请指出------------------------------------------------------

浙公网安备 33010602011771号