C#基本语法
一、基本数据类型:
类型 |
说明 |
定义 |
bool |
true或false |
bool a = true; |
short |
16位整数 |
short b = 23; |
int |
32位整数 |
int c = 24; |
long |
64位整数 |
long d = 25; |
float |
32位浮点数,单精度浮点数 |
float e = 22.33f; |
double |
64位浮点数,双精度浮点数 |
double f = 22.33; |
char |
0-65535之间的单个Unicode字符 |
char g = 'A'; |
string |
多个16位字符 |
string h = "好好学习."; |
说明:
1、类型转换
1)、宽度窄的(即字节数少的)数据类型可以直接赋给较宽的数据类型,并会自动转换为新类型。例:
float a = 9.9f;
int b = 4; //把整型的4转换成了浮点型.
a = b;
2)、宽度宽的转换类宽度窄的。数字间强制类型转换:把要转换的类型名称放在圆括号内,并放在其前面数值
float a = 9.9f;
int b=4;
b = (int)a;
3)、字符串转换为数字
string aa = "23.3";
float bb = float.Parse(aa);
Response.Write(bb.ToString());
2、指定输出小数点位数。
string aa = "23.3";
float bb = float.Parse(aa);
Response.Write(bb.ToString("f3"));//小数点保留三位
二、变量与常量声明:
1、变量:C#中允许一条语句声明同一类型的多个变量
int a, b;
但为了语句清晰推荐将多个声明写成多个语句。
对于字符声明,得用单引号括起来,如:
char a = 'd';
字符串的声明
string mm = "好好学习.";
注意:就是如果在声明数值型变量时没有小数部分,则自动为整数类型,有小数部分的,则自动为double类型,而不是float类型,可通过下面声明,转换为不同类型:
float a = 1.2f;
long b = 23L;
2、常量:对于常量声明,习惯用大写符号来表示常数,如:
const float PI = 3.1415926;
三、运算符:
1、算术运算符:
+ --------------------- 加
- --------------------- 减
* --------------------- 乘
/ --------------------- 除
% --------------------- 求余(即整除后的余数)
2、逻辑运算符:
&& ---------------------与
| |---------------------或
!--------------------- 非
3、递增递减运算符:
++ 或 -- 或 += 或 -= 或 *= 或/=
如i=1;i++;即等i=i+1; 其它为同样的道理,不说。
4、比较运算符:
> 或 < 或 == 或 != 或 >= 或<= 一看就明白,也不说。
四、基本流程语句
1、条件判断:
例:求绝对值
int a = -4;
if (a >=0)
{
Response.Write(a);
}
else
{
Response.Write(-a);
}
条件必须放在括号里.
两个条件的判断,注意括号和条件中的等号
int a=4, b=6;
if((a> 0) && (b>0))
{
Response.Write("a,b都是正数.");
}
else
{
Response.Write("a,b不都是正数.");
}
2、开关语句。
switch 用于多个可能的值,如果有一个匹配,则执行相应代码,每句之后必须有break语句中断后面语句的执行。
int a = 3;
switch (a)
{
case 1:
Response.Write("星期一");
break;
case 2:
Response.Write("星期二");
break;
case 3:
Response.Write("星期三");
break;
default:
Response.Write("错误");
}
3、循环语句。
1)、while 循环:
-------------------------------------------
int s = 0;
int i = 1;
while (i <= 100)
{
s += i;
i++;
}
Response.Write("1-100的和是:" + s);
------------------------------------------
2)、do-while 循环:
------------------------------------------
int s = 0;
int i = 1;
do
{
s += i;
i++;
} while (i <= 100);
Response.Write("1-100的和是:" + s);
------------------------------------------
do while循环与while循环类似,区别:
(1)、while循环先判断后执行;do-while循环先执行后判断
(2)、while循环可能一次也没执行;do-while至少执行一次
(3)、在do-while循环最后有一个分号
3)、for 循环:
-------------------------------------------
int s = 0;
for(int i=0;i<=100;i++)
s+=i;
Response.Write("1-100的和是:" + s);
-------------------------------------------
C#2.0基本语法(二)
一、表达式1?表达式2:表达式3
int a = 4; int b = 5; int c;
if (a > b) c = a; else c = b;
|
int a = 4; int b = 5; int c; c = a > b ? a : b; |
二、异常处理:
1、 通过try-catch语句获得异常。其语法结构如下:
try
{
//可能发生异常的语句
}
catch(Exception ex)
{
//捕捉异常
}
例如:
try
{
double a = 4;
double b = 0;//让除数为0,人为产生异常
Response.Write(a/b);
}
catch(Exception ex)
{
Response.Write("发生错误!");
}
2、 抛出异常,并获得异常
try
{
double a = 4;
double b = 0;//让除数为0,人为产生异常
if (b == 0)
throw new Exception("除数不能为零!");//抛出异常
Response.Write(a/b);
}
catch(Exception ex)
{
Response.Write(ex.Message); //获得抛出的异常
}
三、数组:一维或多维数组的定义。
int[] a={4,10,1,0,22}; //一维数组的定义
int[,] b ={ { 2, 3, 4 }, { 1, 0, 2 } }; //二维数组的定义
//数组的遍历,通常利用for循环输出数组的各个元素
for (int i = 0; i < a.Length; i++)
Response.Write(a[i].ToString() + "<br>");
四、类
1、类的声明
类是使用 class 关键字来定义的,如下面的示例所示:
public class MyMath
{
//此处添加类的成员
}
class 关键字前面是访问级别。在该例中,使用了 public,这表示任何人都可以基于该类创建对象。MyMath为类的名称,位于 class 关键字的后面。定义的其余部分是类的主体,用于定义行为和数据。
2、添加类的成员:类成员有类属性和方法
public class MyMath
{
//添加类的属性
public double pi = 3.1415;
//添加类的方法.求两个数的和
public int Add(int a, int b)
{
int z;
z = a + b;
return z;
}
}
五、创建对象
通过使用 new 关键字,后跟类的名称,可以创建对象,如下所示:
//利用类MyMath创建一个对象aa
MyMath aa = new MyMath();
创建对象后,可以通过此对象来访问类中的成员
六、常用的方法或类修饰符:
public:表示该类成员为公共的。对访问公共成员没有限制
protected :表示该类成员为受保护的,只有该类的子类才能访问该成员。
private:表示该类成员为私有的。只有该类内部才能访问该成员。
partial:修饰类时,表示定义一个分部类。在处理大型项目时,使一个类分布于多个独立文件中可以让多位程序员同时对该类进行处理。
如:
public partial class MyMath
{
//添加类的属性
public double pi = 3.1415;
}
public partial class MyMath
{
//添加类的方法.求两个数的和
public int Add(int a, int b)
{
int z;
z = a + b;
return z;
}
}
七、命名空间的导入,用using