一、基本數(shù)據(jù)類型
-
數(shù)值類型
(1)整形
類型 | 說(shuō)明 |
---|---|
sbyte | (8位有符號(hào)整數(shù)) -128到127 |
byte | (8位有符號(hào)整數(shù)) 0到255 |
int16=short | (表示16位有符號(hào)整數(shù)) -32768到32767 |
int=int32 | (表示32位有符號(hào)整數(shù)) -2147483648到 2147483647 |
int64=long | (表示64位有符號(hào)整數(shù)) -9223372036854775808到 9223372036854775807 |
Uint16=Ushort | (表示16位無(wú)符號(hào)整數(shù)) 0到65535 |
Uint=Uint32 | (表示32位無(wú)符號(hào)整數(shù)) 0到4294967295 |
Uint64=Ulong | (表示64位無(wú)符號(hào)整數(shù)) 0到18446744073709551615 |
(2)非整型
類型 | 說(shuō)明 |
---|---|
單精度浮點(diǎn)型float | (表示7位有符號(hào)實(shí)數(shù)) ±1.401298E-45到 ±3.402823E38 |
雙精度浮點(diǎn)型double | (表示16位有符號(hào)實(shí)數(shù)) -1.7E-308~1.7E+308 |
更高精度數(shù)值decimal | (財(cái)務(wù)專用) -79228162514264337593543950335到79228162514264337593543950335 |
(3)非數(shù)值類型
- 字符char
- 字符串string
- bool
二吵血、變量
-
定義:
變量是用來(lái)存儲(chǔ)值的所在處;它們有名字和數(shù)據(jù)類型偷溺。變量的數(shù)據(jù)類型決定了如何將代表這些值的位存儲(chǔ)到計(jì)算機(jī)的內(nèi)存中践瓷。在聲明變量時(shí)也可指定它的數(shù)據(jù)類型。所有變量都具有數(shù)據(jù)類型亡蓉,以決定能夠存儲(chǔ)哪種數(shù)據(jù)晕翠。
-
1、變量的命名規(guī)則
(1)有英文字母砍濒、數(shù)字淋肾、下劃線組成,不能含有空格和其他字符(@除外爸邢,備注:@name和name是一樣的)樊卓;
(2)不能以數(shù)字開(kāi)頭(88name這樣命名是錯(cuò)誤的);
(3)不能用關(guān)鍵字命名(例如double,public,static等等這些關(guān)鍵字不能使用)杠河;
-
命名注意點(diǎn)
(1)給變量分配有意義的名稱(例如:name一看就知道表示的是名字)碌尔;
(2)命名類和方法時(shí)使用Pascal(帕斯卡)樣式(MyData)浇辜,命名變量時(shí)使用Camel(駝峰)樣式(myData);
(3)不要通過(guò)區(qū)分大小寫(xiě)的不同來(lái)區(qū)分變量唾戚;
(4)變量(標(biāo)識(shí)符)名字不適宜太長(zhǎng)柳洋,盡量精簡(jiǎn)(UserNameData太長(zhǎng),不適宜用來(lái)命名)叹坦;
-
2熊镣、變量的聲明方式
(1)先聲明后賦值
int I;
I=100;(2)聲在明的同時(shí)賦值
int I=100;
(3)可同時(shí)聲明多個(gè)變量
int a=100,b=200,c=300;
三、變量的作用域
-
定義:
變量的作用域是可以訪問(wèn)該變量的的代碼區(qū)域募书。
-
作用域規(guī)則
(1)只要字段所屬的類在某個(gè)作用域內(nèi)绪囱,其字段也在該作用域內(nèi);
(2) 局部變量的作用域只在離它最近的大括號(hào)內(nèi)部莹捡;
(3)在循環(huán)或類似的語(yǔ)句中聲明的局部變量存在于該循環(huán)體內(nèi)鬼吵;
案例如下:
class Program
{
static void Main(string[] args)
{
// a,b,A為全局變量,作用域?yàn)檎麄€(gè)程序內(nèi)
int a = 10;
int b = 20;
int A = a + b;
if(A<30)
{
// c,d為局部變量篮赢,作用域?yàn)閕f語(yǔ)句內(nèi)部
int c = 30;
int d = c - A;
Console.WriteLine(d);
}
int B = a + b + c;//在這里調(diào)用c時(shí)程序就會(huì)報(bào)錯(cuò)而柑,因?yàn)閏是局部變量,它的作用域只在if語(yǔ)句下的大闊號(hào)里
Console.ReadKey();
}
}
四荷逞、修飾符
五、屏幕輸入
- 案例
Console.WriteLine("請(qǐng)輸入你的名字");
string name=Console.ReadLine();
六粹排、轉(zhuǎn)換
- 隱式轉(zhuǎn)換:簡(jiǎn)單意義上來(lái)說(shuō)就是從范圍較小的整數(shù)(或?qū)崝?shù))類型隱式轉(zhuǎn)換為范圍較大整數(shù)(或?qū)崝?shù))類型种远;(自動(dòng)提升類型)
int a=60;
float b=10.99f;
float c=a+b;
- 顯示轉(zhuǎn)換:簡(jiǎn)單意義上說(shuō)就是從范圍較大的整數(shù)(或?qū)崝?shù))類型強(qiáng)制轉(zhuǎn)換為范圍較小整數(shù)(或?qū)崝?shù))類型;
int a=100;
double b=19.99d;
int c=(int)(a+b);
- 類型轉(zhuǎn)換:可實(shí)現(xiàn)不同數(shù)值類型之間的轉(zhuǎn)換
Convter.ToInt16();
Convter.ToInt32();
Convter.ToInt64();
Convter.ToUInt16();
Convter.ToUInt32();
Convter.ToUInt64();
Convter.Double();
Convter.Decimal();
Convter.char();
Convter.string();
用法舉例:
//把int型轉(zhuǎn)換為字符char型
int a=10;
int b=60;
char c=(char)(a+b); //char c=Convert.ToChar(a+b);
Console.WriteLine(c);
//輸出結(jié)果為大寫(xiě)字母F顽耳;因?yàn)樽帜窮對(duì)應(yīng)的ASCII碼表值為70坠敷;
七、復(fù)合數(shù)據(jù)類型
- 枚舉
// 枚舉列表中的每個(gè)符號(hào)(成員)代表一個(gè)整數(shù)值射富,默認(rèn)情況下膝迎,第一個(gè)枚舉符號(hào)的值是 0,后面逐個(gè)增加1胰耗。但是你可以自己定義每個(gè)成員的值限次。
enum Days { Sun, Mon, Tue, Wed, Thu, Fri, Sat }
static void Main(string[] args)
{
int WeekdayStart = (int)Days.Mon;
int WeekdayEnd = (int)Days.Fri;
Console.WriteLine("Monday:{0}", WeekdayStart); //輸出結(jié)果為Monday:1
Console.WriteLine("Friday:{0}", WeekdayEnd); //輸出結(jié)果為Friday:5
Console.ReadKey();
}
enum Days { Sun, Mon, Tue, Wed, Thu, Fri, Sat }
static void Main(string[] args)
{
int[] yizhou = new int[7] { 7, 8, 9, 10, 22, 40, 13 };
int WeekdayStart = yizhou[(int)Days.Mon];
int WeekdayEnd = yizhou[(int)Days.Fri];
Console.WriteLine("Monday:{0}", WeekdayStart);//輸出結(jié)果為Monday:8
Console.WriteLine("Friday:{0}", WeekdayEnd);//輸出結(jié)果為Friday:40
Console.ReadKey();
}
enum Num { a = 8, b, c = 1, e, f, g };
static void Main(string[] args)
{
int A = (int)Num.a;
int E = (int)Num.e;
int C = (int)Num.b;
Console.WriteLine(A);//輸出結(jié)果為8
Console.WriteLine(E);//輸出結(jié)果為2
Console.WriteLine(C);//輸出結(jié)果為9
Console.ReadKey();
- 結(jié)構(gòu)體
- 類
- 接口
- 委托
- 數(shù)組
八、課后習(xí)題
-
1柴灯、寫(xiě)一個(gè)程序卖漫,使輸出結(jié)果為下圖所示:
Console.WriteLine("******************");
Console.WriteLine("*** ***");
Console.WriteLine("*** 雷潮教育 ***");
Console.WriteLine("*** ***");
Console.WriteLine("******************");
- 2、讀取玩家姓名赠群、性別羊始、成績(jī),輸出結(jié)果為名字加成績(jī)等級(jí)(成績(jī)大于等于80為A查描,大于等于60且小于80為B突委,小于60為C)柏卤。
Console.WriteLine("請(qǐng)輸入你的姓名:");
string name= Console.ReadLine();
Console.WriteLine("請(qǐng)輸入你的年齡:");
int age = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("請(qǐng)輸入你的成績(jī):");
double score = Convert.ToDouble(Console.ReadLine());
char cha;
if(score>80)
{
cha = 'A';
}
else if(score>60&&score<80)
{
cha = 'B';
}
else
{
cha = 'C';
}
Console.WriteLine(name + cha);
Console.ReadKey();
- 3、聲明一個(gè)電腦類匀油,里面有電腦的價(jià)格缘缚,要求這個(gè)價(jià)格能夠被外界訪問(wèn)。書(shū)寫(xiě)10遍public,private,protected,internal的定義用自己的語(yǔ)言寫(xiě)出來(lái)钧唐。
class Program:Computer //Program繼承了Computer
{
static void Main(string[] args)
{
Computer c=new Computer();
Program p=new Program();
p.colour ="red";
p.price =4888;
p.brand ="ASUS";
Console.WriteLine(p.colour);
Console.WriteLine(p.price);
Console.WriteLine(p.brand);
Console.ReadKey();
}
}
class Computer //聲明一個(gè)電腦類
{
public int price;
private double weight;
protected string colour;
internal string brand;
}
Public:訪問(wèn)不受限制 忙灼;
Protected:訪問(wèn)僅限于此類(也就是本類的成員)或從此類派生的類 (繼承此類);
Private: 訪問(wèn)僅限于此類(也就是本類的成員)钝侠;
Internal:訪問(wèn)僅限該類能夠由程序集中的所有文件使用该园,而不能由程序集之外的對(duì)象使用 ;
Protected internal:訪問(wèn)僅限于此程序或從此類派生出的類 帅韧;