【回顧】C#從入門到精通第三章筆記
C#從入門到精通(第五版)第三章筆記

變量與常量
1.變量的基本概念
變量本身被用來存儲特定類型的數(shù)據(jù),可以根據(jù)需要隨時改變變量中所存儲的數(shù)據(jù)值。
變量具有:名稱、類型和值。
2.變量的聲明和賦值
兩種聲明和賦值方式:
第一種: 數(shù)據(jù)類型? ?變量名? =? 數(shù)值;? ? ? ? ??
比如:int number = 1000;
第二種:
數(shù)據(jù)類型? ? 變量名;? ? ? ? ? ? ? ?
變量名 = 數(shù)值;
比如:
int money;
money = 1000 ;
3.C#語言中變量命名規(guī)則
①.變量名只能由數(shù)字、字母和下劃線組成。
②.變量名的第一個符號只能是字母和下劃線,不能是數(shù)字。
③.不能使用關(guān)鍵字作為變量名。
④.一旦在一個語句塊中定義了一個變量名,那么在變量的作用域內(nèi)都不能再定義同名的變量。
4.變量的作用域
變量的作用域指程序代碼能夠訪問該變量的區(qū)域,若超出該區(qū)域,則編譯時會出現(xiàn)錯誤。
在程序中,一般會根據(jù)變量的“有效范圍”將變量分為“成員變量”和“局部變量”。
成員變量:在整個類中都有效。成員變量又分為靜態(tài)變量和實(shí)例變量。
比如:
class Test
{
int x=45; //實(shí)例變量? ? ? ?
static int x=90; //靜態(tài)變量? ? ? ?
}
靜態(tài)變量:(有效范圍可以跨類)
局部變量:在"{"和"}"之間的代碼聲明的變量叫局部變量。
5.變量的數(shù)據(jù)類型
變量的數(shù)據(jù)類型按定義可以分為兩種:值類型和引用類型

值類型的變量本身直接存儲數(shù)據(jù)。
引用類型則是存儲實(shí)際數(shù)據(jù)的引用。
值類型:
特點(diǎn):值類型直接存儲值。(賦值時不能影響另一個變量)
(1).整數(shù)類型

(2).浮點(diǎn)類型

(3).布爾類型

值類型之整數(shù)類型
引用類型:(包括類,接口,數(shù)組和委托)
特點(diǎn):存儲對值的引用。(賦值時會影響變量)
例如:
student1.Age = 18(Age=18)
student2 = student1(Age=18)
student2.Age = 20(Age=20)
比如:
namespace Test02
{
? ? class Program
? ? {
? ? ? ? class C //創(chuàng)建一個類C
? ? ? ? {
? ? ? ? ? ? public int Value; //聲明一個公共int類型的變量Value
? ? ? ? }
? ? ? ? static void Main(string[] args)
? ? ? ? {
? ? ? ? ? ? int v1 = 0; //聲明一個int類型的變量v1,并初始化為0
? ? ? ? ? ? int v2 = v1; //聲明一個int類型的變量v2,并將v1賦值給v2
? ? ? ? ? ? v2 = 927; //重新將變量v2賦值為927
? ? ? ? ? ? C r1 = new C(); //使用new關(guān)鍵字創(chuàng)建引用對象
? ? ? ? ? ? C r2 = r1; //使r1等于r2
? ? ? ? ? ? r2.Value = 112; //設(shè)置變量r2的Value值
? ? ? ? ? ? Console.WriteLine("Values:{0},{1}", v1, v2); //輸出變量v1和v2
? ? ? ? ? ? Console.WriteLine("Refs:{0},{1}", r1.Value, r2.Value);//輸出引用類型對象的Value值
? ? ? ? ? ? Console.ReadLine();
? ? ? ? }
? ? }
}
6.預(yù)定義兩類型:Object類型和String類型
object是所有的基類,也就是所有類的父類。
string類是用來表示字符串,代替c語言中字符數(shù)組來存儲字符串的功能。
7.枚舉類型:
格式:訪問修飾符 enum 枚舉名 {值1,值2… }
例如:
? ?enum MyDate //使用enum創(chuàng)建枚舉
? ? ? ? {
? ? ? ? ? ? Sun = 0, //設(shè)置枚舉值名稱Sun,枚舉值為0
? ? ? ? ? ? Mon = 1, //設(shè)置枚舉值名稱Mon,枚舉值為1
? ? ? ? ? ? Tue = 2, //設(shè)置枚舉值名稱Tue,枚舉值為2
? ? ? ? ? ? Wed = 3, //設(shè)置枚舉值名稱Wed,枚舉值為3
? ? ? ? ? ? Thu = 4, //設(shè)置枚舉值名稱Thu,枚舉值為4
? ? ? ? ? ? Fri = 5, //設(shè)置枚舉值名稱Fri,枚舉值為5
? ? ? ? ? ? Sat = 6 //設(shè)置枚舉值名稱Sat,枚舉值為6
? ? ? ? }
8.類型轉(zhuǎn)換
(1).隱式類型轉(zhuǎn)換
在某種條件下,系統(tǒng)自動完成類型轉(zhuǎn)換(即隱式類型轉(zhuǎn)換)「跟C語言的一樣」
(2).顯式類型轉(zhuǎn)換
第一種.
(類型名)表達(dá)式
例如:
int? b? = (int)10.2;
double a = 10;
int c = (int)a;
第二種:
例如:
Convert.To類型名(表達(dá)式)
double a = 10;
int c = Convert.ToInt32(a);
第三種:
例如:
類型名.Parse(表達(dá)式)
double a = 10;
int c = Int.Parse(a.ToString());
9.常量
定義:不能被改變的量
關(guān)鍵字:const
第三章完!