最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

劉鐵猛C#教程學(xué)習(xí)筆記5 操作符詳解1

2023-06-15 15:07 作者:JK_降谷羽  | 我要投稿


一.操作符的優(yōu)先級

一.操作符的優(yōu)先級

上表格中從上往下操作符優(yōu)先級依次降低,上面的操作符優(yōu)先級更高,更先運算



提升優(yōu)先級的方法

可以通過加圓括號的方式,提高表達(dá)式的運算優(yōu)先級(圓括號可嵌套)

同優(yōu)先級的運算順序

同一行操作符運算優(yōu)先級相同,優(yōu)先級相同時大部分按照從左向右的順序依次運算

但帶有賦值功能的操作符固定為最晚運算,且同級運算順序為從右向左

(把右邊的值賦給左邊)

常用簡寫方法

x += y; ? ? ? 等同于 ? ? ? x = x + y;

X -= y; ? ? ? 等同于 ? ? ? x = x - y;

例:

x += y += z;

因為+=是帶有賦值功能的操作符,所以運算順序是從右到左

先算 y += z

再算 x += y

當(dāng)x = 100,y= 200 ,z = 300時

X += y += z運算后

結(jié)果x = 600,y = 500 , z = 300;

計算機(jī)操作符無結(jié)合律

3+4+5 只能理解為Add(Add(3,4),5),不能理解為Add(3,Add(4+5))

二.操作符的本質(zhì)

操作符源自數(shù)學(xué)中的運算符

操作符的本質(zhì)是對函數(shù)(算法)的簡記法

加號“+”可以當(dāng)作Add函數(shù)的簡記

乘號“×”是對多次加法的簡記

操作符不能脫離它關(guān)聯(lián)的數(shù)據(jù)類型

例如程序中整型int的除法,只能得到整數(shù)類型int的答案(整除)

而double、float型數(shù)據(jù)除法得到的就是對應(yīng)的double、float類型的小數(shù)

尤其C#是一種強(qiáng)類型語言

操作符簡單定義

操作符可以說是一種與固定數(shù)據(jù)類型關(guān)聯(lián)的一套基本算法的簡記

可以為為自定義數(shù)據(jù)類型創(chuàng)建操作符

例:

先創(chuàng)建一個靜態(tài)方法

三.用操作符定義和引用方法*

操作符是對方法的簡記

所以靜態(tài)函數(shù)”GetMarry”的創(chuàng)建還可以有如下的表示法

調(diào)用方法時寫為:

四.基本操作符


基本運算符用來組成基本表達(dá)式,基本表達(dá)式是是最簡單的、不能再拆分的,用來組成其他表達(dá)式

所以基本運算符優(yōu)先級最高,最先運算

1.成員訪問操作符“.”


1.用來訪問外層命名空間中的子集命名空間

2.用來訪問命名空間中的類型

3.用來訪問類型中的靜態(tài)成員

4.用來訪問對象的成員

2.方法調(diào)用操作符“f(x)”

與C/C++基本相同

f為函數(shù)名

x為參數(shù)

即使調(diào)用的函數(shù)沒有參數(shù),也不能省略括號

但在委托中添加方法時,不用寫括號

3.元素訪問操作符“[ ]”

訪問C#數(shù)組

訪問數(shù)組的元素

C#中的創(chuàng)建數(shù)組:

方法1 數(shù)組長度:

使用這種方法創(chuàng)建數(shù)組,創(chuàng)建后數(shù)組內(nèi)有10個元素,且都會會被設(shè)為初始化的默認(rèn)值0

方法2 初始化器:

編譯器會自動數(shù)大括號內(nèi)有幾個數(shù),就創(chuàng)建多大容量的數(shù)組實例

訪問數(shù)組元素:同C/C++

數(shù)組的第一個元素下標(biāo)為0,最后一個元素下標(biāo)為N-1

數(shù)組類型的成員方法中,.Length可以得到數(shù)組的長度N

下標(biāo)超出數(shù)組下標(biāo)范圍時編譯會報錯

訪問C#字典(鍵值對?)

ex:一個類后面跟著尖括號"< >"說明這個類是泛型類,之后會講

創(chuàng)建字典并初始化:

string為這個泛型類的索引類型,student為泛型類的值類型

可以通過索引找到值(哈希)

已知索引,訪問值:在方括號中寫要訪問的索引,在這個例子中索引為string類型

4.自增自減操作符“++”、“--”

前置自增x++

x++:變量X的值變?yōu)閄+1,而x++這個表達(dá)式的值為X

后置自增操作符是先賦值再自增

x--同理

后置自增++x

賦值運算順序與前置相反

前置自增操作符是先自增再賦值

--x同理

5.typeof 查看類型的內(nèi)部結(jié)構(gòu)

類型的內(nèi)部結(jié)構(gòu):metadata,元數(shù)據(jù)

6.default ?獲取類型默認(rèn)值

(1)結(jié)構(gòu)體類型(值類型)

(2)引用類型

引用類型的默認(rèn)值為NULL

(3)枚舉類型

結(jié)果為Low

枚舉類型的默認(rèn)值為聲明時的第一個值

類似數(shù)組的第一個元素

但聲明時給枚舉類型進(jìn)行了顯性的賦值時:

此時打印結(jié)果為Mid

聲明時進(jìn)行了賦值時,枚舉類型的默認(rèn)值為賦值為0的值

7.new 創(chuàng)建實例調(diào)用構(gòu)造器

var關(guān)鍵字

來源于單詞Variable ,可變類型

Int x; ?顯式類型變量

var x; 隱式類型變量 ?“我給他賦值的時候,程序你自己看著辦”

x = 100;時,x類型被定為int

x = 100f;時,x的類型被定為float

C#是強(qiáng)類型語言,var變量的類型一旦被賦值確定,類型就不能再改變

var變量的類型由第一次賦值決定,之后不能再改變

new操作符主要功能

創(chuàng)建一個類型的實例,并馬上調(diào)用該類型的實例構(gòu)造器

能獲得創(chuàng)建的實例的內(nèi)存地址,并通過“=”賦值給訪問這個實例的引用變量

附加功能

(1)調(diào)用實例的初始化器

在大括號內(nèi)給實例的成員變量初始化賦值,可同時初始化多個成員變量

(2)同時使用成員訪問操作符

可以運行并顯示,只是創(chuàng)建的實例因為沒有引用變量引用,之后會被C#垃圾收集器銷毀

可用于訪問一次性對象

(3)不同new創(chuàng)造實例的例子

string是一個類(class)類型,但使用時不用創(chuàng)建實例

因為string過于常用,是一個基本類型,C#對其開了一個語法糖,隱藏了自動的new操作符

手動用new操作符創(chuàng)建實例也是可以的

整型數(shù)組

Int [ ] myArray = { 1, 2, 3, 4, };

整型數(shù)組用大括號初始化時,不用new創(chuàng)建實例,這也是一個語法糖

(4)為匿名類型創(chuàng)建實例

即使沒有手動創(chuàng)建有名字的類型,這個程序也可以使用

程序會自動創(chuàng)建匿名的、成員包含Name、Age字段的泛型類型

由此可見var關(guān)鍵字在泛型領(lǐng)域可大展拳腳

危險警告

一旦在一個類中調(diào)用了new操作符,會使這個類與用new創(chuàng)建實例的類型產(chǎn)生非常緊密的耦合!(緊耦合)

ex:參見【設(shè)計模式】-【依賴之路】,可以學(xué)習(xí)如何將緊耦合變?yōu)橄鄬捤傻鸟詈?/p>

new關(guān)鍵字的其他用途

(1)當(dāng)作操作符來使用

(2)new用于子類對父類方法的隱藏

new關(guān)鍵字,作為修飾符使用在子類的實例方法前,該方法與父類中的方法頭完全一致

此時會隱藏父類的方法,子類用該方法名調(diào)用時使用子類自己的方法















































劉鐵猛C#教程學(xué)習(xí)筆記5 操作符詳解1的評論 (共 條)

分享到微博請遵守國家法律
绵阳市| 天津市| 南木林县| 卫辉市| 吉隆县| 浦江县| 青州市| 延川县| 吴桥县| 隆化县| 石柱| 体育| 腾冲县| 肥东县| 龙江县| 新兴县| 壶关县| 甘孜县| 曲松县| 泰和县| 赤壁市| 陆川县| 华蓥市| 平利县| 乐都县| 高雄市| 从江县| 教育| 临湘市| 岳阳市| 台中县| 布拖县| 六盘水市| 邢台市| 济源市| 博爱县| 大田县| 苏尼特左旗| 扎囊县| 海安县| 车险|