C#語(yǔ)句先后順序?qū)Τ绦虻慕Y(jié)果有影響嗎
下面通過(guò)一段代碼給大家解析C#語(yǔ)句的順序不同所執(zhí)行的結(jié)果不一樣。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Test
{
/// <summary>
/// 自定義類,封裝加數(shù)和被加數(shù)屬性
/// </summary>
class MyClass
{
private int x = ; //定義int型變量,作為加數(shù)
private int y = ; //定義int型變量,作為被加數(shù)
/// <summary>
/// 加數(shù)
/// </summary>
public int X
{
get
{
return x;
}
set
{
x = value;
}
}
/// <summary>
/// 被加數(shù)
/// </summary>
public int Y
{
get
{
return y;
}
set
{
y = value;
}
}
/// <summary>
/// 求和
/// </summary>
/// <returns>加法運(yùn)算和</returns>
public int Add()
{
return X + Y;
}
}
class Program
{
static void Main(string[] args)
{
MyClass myclass = new MyClass(); //實(shí)例化MyClass的對(duì)象
myclass.X = ; //為MyClass類中的屬性賦值
myclass.Y = ; //為MyClass類中的屬性賦值
int kg = myclass.Add();
Console.WriteLine(kg); //調(diào)用MyClass類中的Add方法求和
Console.ReadLine();
}
}
}
第60行的語(yǔ)句若是被放到第56行,則結(jié)果輸出是0不是8,所以,在設(shè)計(jì)程序時(shí),要注意語(yǔ)句次序,有著清晰的思維邏輯 。
下面還有點(diǎn)時(shí)間,接著給大家介紹C#中循環(huán)語(yǔ)句總結(jié)
通過(guò)使用循環(huán)語(yǔ)句可以創(chuàng)建循環(huán)。 循環(huán)語(yǔ)句導(dǎo)致嵌入語(yǔ)句根據(jù)循環(huán)終止條件多次執(zhí)行。 除非遇到跳轉(zhuǎn)語(yǔ)句,否則這些語(yǔ)句將按順序執(zhí)行。
C#循環(huán)語(yǔ)句中使用下列關(guān)鍵字:
· do...while
· for
· foreach...in
· while
do...while
do...while語(yǔ)句執(zhí)行一個(gè)語(yǔ)句或語(yǔ)句重復(fù),直到指定的表達(dá)式的計(jì)算結(jié)果為false, 循環(huán)的身體必須括在大括號(hào)內(nèi){},while條件后面使用分號(hào)結(jié)尾
示例
下面的示例 實(shí)現(xiàn)do-while循環(huán)語(yǔ)句的執(zhí)行
public class TestDoWhile
{
static void Main ()
{
int x = 0;
do
{
Console.WriteLine(x);
x++;
} while (x < 10);
}
}
/*
Output:
0
1
2
3
4
5
6
7
8
9
*/
do-while循環(huán)在計(jì)算條件表達(dá)式之前將執(zhí)行一次,如果 while表達(dá)式計(jì)算結(jié)果為 true,則,執(zhí)行將繼續(xù)在第一個(gè)語(yǔ)句中循環(huán)。 如果表達(dá)式計(jì)算結(jié)果為 false,則會(huì)繼續(xù)從 do-while 循環(huán)后的第一個(gè)語(yǔ)句執(zhí)行。
do-while 循環(huán)還可以通過(guò)break、goto、return 或 throw 語(yǔ)句退出。
for
for 循環(huán)重復(fù)執(zhí)行一個(gè)語(yǔ)句或語(yǔ)句塊,直到指定的表達(dá)式計(jì)算為 false 值。 for 循環(huán)對(duì)于循環(huán)數(shù)組和順序處理很有用。
示例
在下面的示例中,int i 的值將寫入控制臺(tái),并且 i 在每次通過(guò)循環(huán)時(shí)都加 1。
class ForTest
{
static void Main()
{
for (int i = 1; i <= 10; i++)
{
Console.WriteLine(i);
}
}
}
/*
Output:
1
2
3
4
5
6
7
8
9
10
*/
for 語(yǔ)句重復(fù)執(zhí)行括起來(lái)的語(yǔ)句,如下所述:
· 首先,計(jì)算變量 i 的初始值。
· 然后,只要 i 的值小于或等于 10,條件計(jì)算結(jié)果就為 true。此時(shí),將執(zhí)行 Console.WriteLine 語(yǔ)句并重新計(jì)算 i。
· 當(dāng) i 大于10 時(shí),條件變成 false 并且控制傳遞到循環(huán)外部。
由于條件表達(dá)式的測(cè)試發(fā)生在循環(huán)執(zhí)行之前,因此 for 語(yǔ)句可能執(zhí)行零次或多次??梢酝ㄟ^(guò)使用break、goto 、 throw或return語(yǔ)句退出該循環(huán)。
所有表達(dá)式的 for語(yǔ)句是可選的例如對(duì)于下面的語(yǔ)句用于寫一個(gè)無(wú)限循環(huán)。
for (; ; )
{
// ...
}
foreach...in
foreach 語(yǔ)句對(duì)實(shí)現(xiàn) System.Collections.IEnumerable 或 System.Collections.Generic.IEnumerable<T>接口的數(shù)組或?qū)ο蠹现械拿總€(gè)元素重復(fù)一組嵌入式語(yǔ)句。 foreach 語(yǔ)句用于循環(huán)訪問(wèn)集合,以獲取您需要的信息,但不能用于在源集合中添加或移除項(xiàng),否則可能產(chǎn)生不可預(yù)知的副作用。 如果需要在源集合中添加或移除項(xiàng),請(qǐng)使用 for循環(huán)。
嵌入語(yǔ)句為數(shù)組或集合中的每個(gè)元素繼續(xù)執(zhí)行。 當(dāng)為集合中的所有元素完成循環(huán)后,控制傳遞給 foreach 塊之后的下一個(gè)語(yǔ)句。
可以在 foreach 塊的任何點(diǎn)使用 break 關(guān)鍵字跳出循環(huán),或使用 continue 關(guān)鍵字進(jìn)入循環(huán)的下一輪循環(huán)。
foreach 循環(huán)還可以通過(guò) break、goto、return 或 throw 語(yǔ)句退出。
示例
在此示例中,使用 foreach 顯示整數(shù)數(shù)組的內(nèi)容。
class ForEachTest
{
static void Main(string[] args)
{
int[] barray = new int[] { 0, 1, 2, 3, 4, 5};
foreach (int i in barray)
{
System.Console.WriteLine(i);
}
}
}
/*
Output:
0
1
2
3
4
5
*/
while
while 語(yǔ)句執(zhí)行一個(gè)語(yǔ)句或語(yǔ)句塊,直到指定的表達(dá)式計(jì)算為 false。
class WhileTest
{
static void Main()
{
int n = 1;
while (n < 5)
{
Console.WriteLine(n);
n++;
}
}
}
/*
Output:
1
2
3
4
*/
相關(guān)文章
C#后臺(tái)接受前臺(tái)JSON字符串裝換成字典集合處理
本文介紹C#利用Newtonsoft接收前端的JSON字符串,并解析反序列化成字典集合,對(duì)其進(jìn)行處理。2016-04-04
C#?中?List?與?List?多層嵌套不改變?cè)档膶?shí)現(xiàn)方法(深度復(fù)制)
這篇文章主要介紹了C#?中?List?與?List?多層嵌套不改變?cè)档膶?shí)現(xiàn)方法,使用?BinaryFormatter?將原始?List?序列化為字節(jié)流,然后再反序列化得到新的?List,實(shí)現(xiàn)了深度復(fù)制,需要的朋友可以參考下2024-03-03
WPF模擬實(shí)現(xiàn)Gitee泡泡菜單的示例代碼
這篇文章主要介紹了如何利用WPF模擬實(shí)現(xiàn)Gitee泡泡菜單,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)或工作有一定幫助,需要的可以參考一下2022-08-08
C#中DataTable 轉(zhuǎn)實(shí)體實(shí)例詳解
這篇文章主要介紹了C#中DataTable 轉(zhuǎn)實(shí)體實(shí)例詳解,需要的朋友可以參考下2017-04-04
C# 中文簡(jiǎn)體轉(zhuǎn)繁體實(shí)現(xiàn)代碼
C# 中文簡(jiǎn)體轉(zhuǎn)繁體實(shí)現(xiàn)代碼,需要的朋友可以參考一下2013-02-02

