.NET类型
引用类型:字符串,数组,类,委托类型
值类型:
数值类型,字符类型,布尔类型,日期类型,结构类型struct枚举类型enum
值类型数据通常在栈stack当中分配
变量当中存放的是实际数据值
引用类型的实际数据被分配在堆当中,而引用变量被分配在栈当中,引用类型变量存放的是堆当中的示例数据存储地址即引用
引用类型“object,string,classs,interface.int[],delegate
每一个枚举成员为一个命名常数,具有一个整数值,第一个枚举成员默认值是0,以后的成员值是将前一个枚举成员值加1得到的
publicenum TimeOfDay{
Morning=1;
Afternooon,
Evening}
结构式一种值类型,不需要堆的分配
在结构的声明当中,不能够堆实例变量初始化,const,static字段除外
结构当中可以声明带参数的构造函数
为结构当中的数据成员的初始化通过new创建结构的实例
符号常量const
在声明的时候必须初始化
public const int months=12;
u U:uint,ulong
l,,L:long,ulong
ul:ulog
f...F:float
d...D:double
m...M:decimal
一个字符的长度式16为,字符类型的类型标识符式char,单引号括起来的一个字符,字符常数。
C#提供了转义符,和c语言相同的
逐字字符串:@开头,在之后的一对双引号当中,包含的式unicode字符,不存在转义字符的概念
局部变量:隐士类型var声明,
var i=10;
var声明的变量必须式局部变量,声明的时候必须初始化
条件表达式:
y=x>=0?x:-x;
new T[...]数组创建new T(...)对象和委托创建x--
x is T
x属于t类型,返回true,否则返回false
x as T:返回转换为类型T的x,如果x不是T则返回
移位运算<<,,>>
Console.Write("请输入abc=’‘);
string[]intSS=inS.Split('');
double a=Convert.ToDouble(inSS[0]);
double b=Convert.ToDOuble(intSS[1]);
doub;e c=Convert.ToDouble(intSS[2]);
if(a+b>c&&a+c>b&&b+c>a)
{
double s=(a+b+c)/2;
double area=Math.Sqrt(s(s-a)*(s-b)*(s-c));
Console.WriteLine("area={0:f3}",area);
}
else{
Console.WriteLIne("输入的数据错误");
}
大小写转换
Console.Write("请输入一个字母");
char ch=Convert.ToChar(Console.Read());
if(ch>='A'&&ch<='Z')
ch=(char)(ch-'A'+'a');
Console.WriteLine("将大写转成小写后,该字母是{0}",ch);
判断一个四位数字是不是回文数
staticvoid main(String[]args){
Console.Write("请输入一个四位数子");
int n=Convert.ToInt32(Console.ReadLine());
int d1=n/1000;
int d2=n/100%10;
inr d3=n/10%10;
int d4=n%10;
if(d1==d2&&d2==d3)
Console.WriteLine("是回文数");
else{
Console.WriteLIne("不是回文数");
}