1 .NET的框架(Framework):是整个开发平台的基础,包括公共语言运行库和.NET类库
2.C#的数据类型
按数据的存储方式划分,有值类型和引用类型.
值类型:(值类型变量存储数据)
Int long float double decimal enum strutBool char sbyte byte short ushort uint long ulong float double decimal enum stuct
引用类型:(存储对实际数据的引用)
Object string class interface delegate
3.基本编码规则:
首先要提出的是C#语言大小写是敏感的,大型程序的开发必须有通用的编码规则。
l 标准化的编码规范有助于理解代码的意义以及如何使用和改进代码
l 编码规范使项目成员可以读懂并理解其他开发人员编写的代码
l 编码规范可以提高软件的可维护性
l 编码规范使所有开发人员都采用一致的编码风格
l 结构的成员和单独的变量,如变量和常量等采用Camel 风格的命名 totalValue,
l 数据结构如类、接口和枚举等采用 Pascal 风格的命名。WelcomeClass OnClick
l 在程序的关键地方要加注释进行说明。 // /* …*/
4、C#的语句:
选择语句 (if else;switch case)
选择语句依据一个控制表达式的计算值从一系列可能被执行的语句选择出要执行的语句。说明:逻辑表达式必须是布尔型。
(1)if语句格式如下:
if (条件 2)
{ 语句组 1; }
else
{ 语句组 2;}
(2) Switch 语句
分支语句依据控制表达式的值选择执行相关的语句。其格式如下:
switch (choice)
{case value1:
<语句组 1>
break;
case value2:
<语句组 2>
break;
default :
<语句组 n>}
循环控制(do ;while ;for;foreach)
(1)while依据其表达式的值条件执行它的嵌套语句零次或者多次。
(2)do语句
do语句根据其布尔表达式的值有条件的执行它的嵌套语句一次或者多次。
(3)for语句
for语句首先计算一系列初始表达式的值,接下来当条件成立时,执行其嵌套语句,之后计算重复表达式的值并根据其值决定下一步的操作.
(4)foreach语句
说明:此语句使用户在数组和集合中迭代元素。
例int[] arr1=new int[5] {1,2,3,4,5};
foreach(int i in arr1)
Console.WriteLine(“Value is {0}”,i);
跳转语句(break语句 continue语句 goto语句 return语句)
(1)break语句 退出最内层的循环或者退出一个switch语句
(2)continue语句 开始循环的一次新迭代
(3)goto 语句
(4)return语句 指定函数返回的值,当执行return语句时,即使函数主体中还有其他语句,函数执行也会停止!
例1. switch (n)
{
case 1:
cost += 25;
break;
case 2:
cost += 25;
goto case 1;
case 3:
cost += 50;
goto Finish;
default:
Console.WriteLine("Invalid selection.");
break;
}
Finish:
Console.WriteLine("End of search.");
例2.for (int i = 1; i <= 10; i++)
{
if (i < 9)
{
continue;
}
Console.WriteLine(i);
}
for(int i=1;i<=10;i++)
{
if(i==6)
{ break; }
Console.write(i);
}
5.命名空间
将相关的类型进行分组的逻辑命名方案。利用关键字namespace定义命名空间,System是根命名空间。
6. 标识符和保留字
标识符以字母,下划线或@开头。后跟字母,下划线,数字。
保留字:如const定义常量,base用于访问父类的公有和保护成员,一定使用保留字做标识符,应以@开头。
7.字符串类型:i
字符串的建立:可以通过直接赋值建立字符串 如:string str=”hello”;
string str=”c:\\text\\first.cs”;或者三string [email protected]”c:\text\first.cs”;
⊙常用字符串操作方法
1)比较字符串
String.compare(string strA,sting strB)
2)查找t
Indexof(string str)可以查找str在字符串中出现的位置;
lastIndexof(string str)可以查找str在字符串中最后一次出现的位置
3)插入:Insert(int startindex,string str);
4)删除:Remove(int startindex,int count);
5)替换:Replace(string oldstr,string newstr);
6)大小写转换 Toupper()可以将所有的英文字母转化成大写的Lowupper()可以将所有的英文字母转化成小写的。
7)trimstart()可以删除字符串首部空格,trimend()可以删除字符串尾部空格,trime()可以删除字符串首尾部 的空格
8.数组
1)数组的声明:
int[] numbers;//一维数组的声明
Int[,] names;//多维数组的声明
Byte[][] scores;//数组的数组(交错的)
2)创建数组
Int[] numbers=new int[5];//一维数组
string[,] names=new sting [2,3]//多维数组
Byte[][] scores=new byte[5][]//数组的数组
3).初始化数组
Int[] numbers=new int[5]{1,2,3,4,5};
string[] names=new sting [3]{“zhao” ,” qian” “ sun” };
9.类型转换
一、隐式转换与显示转换
1.隐式转换
隐式转换是系统默认的,不必加说明就可以进行的转换
2.显示转换
Parse convert a.tostring() (int)a
显示转换又叫强制转换,与隐式转换不同的是,显示转换需要指明要转换的类
二、数值与字符串的转换
1、数值转字符串
2、字符串转数值
三、装箱与拆箱
装箱转换是指隐式地将任何值类型转换成object类型。
拆箱转换是把object类型显示地转换为值类型,它是装箱的逆过程。
例如
int nfunny=2000;
Object ofunny=nfunny;
Int n;
Object ofunny=2000;
Int n=(int)ofunny;
10、异常处理
1、格式:
try
{//程序代码}
catch(异常类型声明)
{//错误处理代码}
catch(异常类型声明)
{//错误处理代码}
finally
{//finally 代码
}
2、抛出异常:
除了在程序运行时处理异常外,在一些特殊的情况下,还可能使用throw关键字显示地抛出异常。
格式: throw new 系统异常或用户自定义异常
系统常用的异常分类:
System.DivideByZeroException()
System.FormatException();
System.IO .IOException();
System.IO.FileNotFoundException();
System.IndexOutOfRangeException();
3、异常说明
n 程序逻辑是在 try 块中编写的,而错误处理代码是在 catch 块中编写的;
n 如果需要在 try 块中捕捉多个异常,则必须具有多个 catch 块;
n 提供一个可选的 finally 块。无论是否产生异常,都执行此块中的语句;
n throw 语句可用来抛出系统异常或用户自定义异常(也称为自定义异常);
n 用户自定义异常有助于在程序执行期间抛出特定于应用程序的异常。