.NET類型
引用類型:字符串舍肠,數(shù)組,類窘面,委托類型
值類型:
數(shù)值類型翠语,字符類型,布爾類型财边,日期類型肌括,結(jié)構(gòu)類型struct枚舉類型enum
值類型數(shù)據(jù)通常在棧stack當(dāng)中分配
變量當(dāng)中存放的是實(shí)際數(shù)據(jù)值
引用類型的實(shí)際數(shù)據(jù)被分配在堆當(dāng)中,而引用變量被分配在棧當(dāng)中,引用類型變量存放的是堆當(dāng)中的示例數(shù)據(jù)存儲地址即引用
引用類型“object,string,classs,interface.int[],delegate
每一個(gè)枚舉成員為一個(gè)命名常數(shù)谍夭,具有一個(gè)整數(shù)值黑滴,第一個(gè)枚舉成員默認(rèn)值是0,以后的成員值是將前一個(gè)枚舉成員值加1得到的
publicenum TimeOfDay{
Morning=1;
Afternooon,
Evening}
結(jié)構(gòu)式一種值類型紧索,不需要堆的分配
在結(jié)構(gòu)的聲明當(dāng)中袁辈,不能夠堆實(shí)例變量初始化,const,static字段除外
結(jié)構(gòu)當(dāng)中可以聲明帶參數(shù)的構(gòu)造函數(shù)
為結(jié)構(gòu)當(dāng)中的數(shù)據(jù)成員的初始化通過new創(chuàng)建結(jié)構(gòu)的實(shí)例
符號常量const
在聲明的時(shí)候必須初始化
public const int months=12;
u? U:uint,ulong
l,,L:long,ulong
ul:ulog
f...F:float
d...D:double
m...M:decimal
一個(gè)字符的長度式16為珠漂,字符類型的類型標(biāo)識符式char,單引號括起來的一個(gè)字符晚缩,字符常數(shù)。
C#提供了轉(zhuǎn)義符媳危,和c語言相同的
逐字字符串:@開頭荞彼,在之后的一對雙引號當(dāng)中,包含的式unicode字符待笑,不存在轉(zhuǎn)義字符的概念
局部變量:隱士類型var聲明鸣皂,
var i=10;
var聲明的變量必須式局部變量,聲明的時(shí)候必須初始化
條件表達(dá)式:
y=x>=0?x:-x;
new T[...]數(shù)組創(chuàng)建new T(...)對象和委托創(chuàng)建x--
x is T
x屬于t類型暮蹂,返回true,否則返回false
x as T:返回轉(zhuǎn)換為類型T的x,如果x不是T則返回
移位運(yùn)算<<,,>>
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("輸入的數(shù)據(jù)錯(cuò)誤");
}
大小寫轉(zhuǎn)換
Console.Write("請輸入一個(gè)字母");
char ch=Convert.ToChar(Console.Read());
if(ch>='A'&&ch<='Z')
ch=(char)(ch-'A'+'a');
Console.WriteLine("將大寫轉(zhuǎn)成小寫后,該字母是{0}",ch);
判斷一個(gè)四位數(shù)字是不是回文數(shù)
staticvoid main(String[]args){
Console.Write("請輸入一個(gè)四位數(shù)子");
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("是回文數(shù)");
else{
Console.WriteLIne("不是回文數(shù)");
}