我們來(lái)練習(xí)一下上堂課的代碼:
string sayHiText = "Hello World!";
Console.WriteLine(sayHiText);
Console.WriteLine(sayHiText);
Console.WriteLine(sayHiText);
Console.WriteLine(sayHiText);
Console.WriteLine(sayHiText);
Console.WriteLine(sayHiText);
Console.WriteLine(sayHiText);
Console.WriteLine(sayHiText);
Console.WriteLine(sayHiText);
Console.WriteLine(sayHiText);
看下結(jié)果:
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
好肮蛹,輸出了十次Hello World!广辰,在之前,我們學(xué)習(xí)了變量和Console.WriteLine鄙才。這件事情我們做起來(lái)就比較容易了颂鸿。
下面我們有了新的任務(wù),我們想要讓程序輸出1000次Hello World!攒庵。
做起來(lái)的話也是很容易的嘴纺,只不過(guò)要花很多時(shí)間。
比如以上的Console.WriteLine部分的十行代碼浓冒,復(fù)制粘貼100次栽渴。自己還要去數(shù)100個(gè)數(shù),比較麻煩稳懒。通過(guò)現(xiàn)有的知識(shí)是沒(méi)法很好地完成任務(wù)的闲擦。所以我們要去學(xué)新的概念。
首先我們要為新的概念做一些準(zhǔn)備场梆。
我們上堂課講了,sayHiText是一個(gè)string類型墅冷,也就是一個(gè)字符串類型。 字符串我們理解為文本或油。但以后我們就不叫文本了寞忿,就叫字符串類型。
sayHiText變量存儲(chǔ)了HelloWorld的值顶岸。
除了字符串類型腔彰,其實(shí)還有其他類型。
比如整數(shù)類型
int times = 1000;
這行代碼跟我們上堂課學(xué)習(xí)的string變量聲明的代碼結(jié)構(gòu)很相似辖佣。
string sayHiText = "Hello World!";
都是前邊有個(gè)類型關(guān)鍵字描述后邊變量的類型霹抛。
times變量是int類型。int的全稱叫integer,是整型的意思卷谈。
所以它可以存儲(chǔ)的值是整數(shù)值杯拐。就是1000,因?yàn)?000是整數(shù)。
我們看下代碼的輸出結(jié)果藕施。
int times = 1000;
Console.WriteLine(times);
1000
OK,到這里。
我們?yōu)槭裁匆獙W(xué)習(xí)整型呢凸郑?是用來(lái)進(jìn)行一個(gè)計(jì)數(shù)的操作裳食。我們需要從0計(jì)到1000,計(jì)的這個(gè)過(guò)程我們需要進(jìn)行一個(gè)加法操作芙沥。每次都要進(jìn)行一個(gè)加1的操作诲祸。
加法怎么去做呢?
我們先了解一下變量的特性而昨,代碼如下
int times = 0;
Console.WriteLine(times);
第一行代碼救氯,我們讀出來(lái)的話叫變量的聲明并賦值。
變量聲明之后歌憨,在后邊的代碼中不用在前邊加個(gè)int了着憨。
times聲明了之后,就代表在程序里邊已經(jīng)有了times這個(gè)變量了务嫡。我們可以重復(fù)地去利用這個(gè)變量了甲抖。
然后我們看下一個(gè)簡(jiǎn)單的加法操作
Console.WriteLine(1 + 1);
看下結(jié)果
2
1 + 1 的話肯定就是2了。
然后我們要用一個(gè)變量來(lái)存儲(chǔ)1 + 1的內(nèi)容心铃。
跟剛才一樣准谚,我們就用sum來(lái)存儲(chǔ)。
int sum = 1 + 1;
Console.WriteLine(sum);
把之前代碼中的1 + 1提取成變量去扣,用sum變量來(lái)代替柱衔。
看下結(jié)果:
2
輸出的結(jié)果一樣的。
再介紹一個(gè)稍微難一點(diǎn)的運(yùn)算方式愉棱。
int sum = 0;
sum = sum + 1;
sum = sum + 1;
Console.WriteLine(sum);
初始值我們默認(rèn)為0唆铐。
sum = sum + 1是什么意思呢?
在程序語(yǔ)言里奔滑,我們的計(jì)算都是從右向左開始進(jìn)行的或链。
在第二行代碼里等號(hào)右邊的sum值是0,可以翻譯為 sum = 0 + 1; 也就是sum = 1;
到第三行的時(shí)候等號(hào)右邊的sum值已經(jīng)是上一行sum的結(jié)果档押,也就是是1澳盐,可以把第三行翻譯為翻譯為 sum = 1 + 1;也就是sum = 2;
我們來(lái)輸出下結(jié)果,驗(yàn)證一下:
2
好令宿,結(jié)果就是2.
所以我們的加一操作都會(huì)sum = sum + 1;這樣的方式去寫叼耙。
在程序語(yǔ)言里,我們經(jīng)常會(huì)進(jìn)行加一的操作粒没。所以程序語(yǔ)言的設(shè)計(jì)者為此做了一些簡(jiǎn)化,簡(jiǎn)化為sum++,代碼如下:
int sum = 0;
sum++;
sum++;
Console.WriteLine(sum);
看下結(jié)果:
2
好筛婉,結(jié)果和上邊的一樣。
除了加法我們還要在學(xué)一個(gè)比較大小操作。
再學(xué)習(xí)比較大小之前我們要介紹一個(gè)新的類型爽撒。
這個(gè)類型叫布爾(bool)類型入蛆。
bool isEqual = false;
以上這種結(jié)構(gòu)的代碼我們已經(jīng)學(xué)習(xí)了兩次了,分別是int和string類型的聲明并賦值硕勿。
bool 關(guān)鍵字描述了isEqual變量是bool類型哨毁。
bool是什么類型呢?
“真”的話在這里我們用true表示源武,”假”的話就用false,是用來(lái)做條件判斷的扼褪。看看一個(gè)條件是否是成立的粱栖,成立的就是true话浇,不成立的就是false。
我們看下輸出的結(jié)果是什么樣的闹究。
bool isEqual = false;
Console.WriteLine(isEqual);
結(jié)果:
False
那么我們從哪里得到這個(gè)false和true的值呢幔崖?
bool isEqual = 1 == 1;
Console.WriteLine(isEqual);
兩個(gè)等號(hào)代表判斷兩個(gè)1是否相等,如果相等則值為true渣淤,不相等則值為false岖瑰。很明顯1肯定等于1 ,所以isEqual的值最終是true砂代。
1 == 1這種的叫它布爾表達(dá)式蹋订。
好我們看下結(jié)果:
True
OK,bool類型我們就學(xué)到這。
bool表達(dá)式中除了判斷兩個(gè)整數(shù)是否相等之外刻伊,還可以判斷1是否大于2露戒。
我們來(lái)看下代碼:
bool isBigger = 1 > 2;
Console.WriteLine(isBigger);
很簡(jiǎn)單,我們看下結(jié)果捶箱。
False
OK智什,結(jié)果沒(méi)問(wèn)題。
準(zhǔn)備階段就到這里了丁屎,我們學(xué)習(xí)新的概念荠锭,叫做循環(huán)。
我們看下代碼是什么樣的晨川。
for (int i = 0;i < 1000; i++)
{
Console.WriteLine("Hello World!");
}
功能是將Hello World執(zhí)行1000次证九。
for (int i = 0;i < 1000; i++)這行是一個(gè)計(jì)數(shù)的過(guò)程。從0到999共虑,總共1000次愧怜。
其中第一個(gè)分號(hào)前邊的部分代碼int i = 0只執(zhí)行一次,對(duì)計(jì)數(shù)變量進(jìn)行了初始化妈拌。第一個(gè)分號(hào)后邊的代碼是什么意思呢拥坛?i < 1000是一個(gè)表達(dá)式,就是我們剛才學(xué)習(xí)的bool表達(dá)式。每當(dāng)執(zhí)行完花括號(hào)內(nèi)的代碼時(shí)猜惋,都會(huì)執(zhí)行一次i < 1000的代碼丸氛。當(dāng)這個(gè)條件為true是繼續(xù)下一次循環(huán)。否則就跳出循環(huán)著摔。
第二個(gè)分號(hào)后面的代碼i++,是進(jìn)行一個(gè)累加操作缓窜,它其實(shí)是i = i + 1。是當(dāng)每次循環(huán)執(zhí)行結(jié)束之后梨撞,會(huì)執(zhí)行一次i++雹洗。
好香罐,當(dāng)?shù)谝淮芜M(jìn)入循環(huán)時(shí),代碼在計(jì)算機(jī)里是這樣的卧波。
for (int i = 0;0 < 1000; i++) i = 0
{
Console.WriteLine("Hello World!");
}
當(dāng)i 是0時(shí),i < 1000是true庇茫,所以滿足條件可以執(zhí)行循環(huán)代碼港粱。
執(zhí)行完循環(huán)代碼之后,進(jìn)行累加操作,這時(shí)在計(jì)算機(jī)里代碼是這樣的旦签。
for (int i = 0;0 < 1000; i++) i = 1
{
Console.WriteLine("Hello World!");
}
再之后進(jìn)入下一次循環(huán)查坪,還是先判斷一次i < 1000,這時(shí)候i是1,1 < 1000是true宁炫。所以可以執(zhí)行循環(huán)里的代碼偿曙。
就這樣一種反復(fù),到第1000次執(zhí)行完后羔巢,i的值是1000,再次進(jìn)行判斷i < 1000望忆,這時(shí)候1000 < 1000就是false了。就會(huì)結(jié)束這次循環(huán)竿秆,接著執(zhí)行循環(huán)結(jié)構(gòu)后邊的代碼了启摄。
以上四行代碼已經(jīng)是,本堂課的問(wèn)題的解決方案了幽钢,問(wèn)題是如何輸出1000次Hello World歉备。
我們看下結(jié)果
Hello World!
Hello World!
...
好本堂課的內(nèi)容到這里為止,我們下堂課見匪燕。
本文為視頻課程Unity 游戲框架搭建 __C#入門與框架設(shè)計(jì):http://edu.manew.com/course/431)]的講稿蕾羊,如果覺得內(nèi)容不錯(cuò),可以購(gòu)買課程來(lái)支持我的事業(yè)哦~帽驯,
第三課課程內(nèi)容更新日志:
- 視頻:時(shí)長(zhǎng)從15:08優(yōu)化到12:54厢塘。
- 視頻:去掉了口頭禪。
- 視頻:邏輯不清晰的部分進(jìn)行了重新配音庸疾。
相關(guān)鏈接:
我的框架地址:https://github.com/liangxiegame/QFramework
QFramework&游戲框架搭建QQ交流群: 623597263
C#入門課程交流群: 609819797
轉(zhuǎn)載請(qǐng)注明地址:涼鞋的筆記http://liangxiegame.com/
微信公眾號(hào):liangxiegame
如果有幫助到您:
如果覺得本篇教程對(duì)您有幫助锦聊,不妨通過(guò)以下方式贊助筆者一下,鼓勵(lì)筆者繼續(xù)寫出更多高質(zhì)量的教程,也讓更多的力量加入 QFramework 截碴。
- 給 QFramework 一個(gè) Star
- 給 Asset Store 上的 QFramework 并給個(gè)五星(需要先下載)
- 購(gòu)買 gitchat 話題《Unity 游戲框架搭建:我所理解的框架》
- 價(jià)格: 6 元梳侨,會(huì)員免費(fèi)
- 地址: http://gitbook.cn/gitchat/activity/5abc3f43bad4f418fb78ab77
- 購(gòu)買 gitchat 話題《Unity 游戲框架搭建:資源管理神器 ResKit》
- 價(jià)格: 6 元,會(huì)員免費(fèi)
- 地址: http://gitbook.cn/gitchat/activity/5b29df073104f252297a779c
- 購(gòu)買同名的蠻牛視頻課程錄播課程:
- 價(jià)格
19.2 元29.8 元 - 地址: http://edu.manew.com/course/431
- 價(jià)格
- 購(gòu)買同名電子書 :https://www.kancloud.cn/liangxiegame/unity_framework_design( 29.9 元日丹,內(nèi)容會(huì)在 2018 年 10 月份完結(jié))