C#⼊门分享(四)——C#常⽤语句
和C++,java⼀样,C#⽀持常⽤的if,while,do while,for,switch语句,具体语法不在赘述,但他们在C#中有⼀些⽤法和其他的语⾔不同:(1)在C#中,if⼦句中的表达式必须等于布尔值。不能直接测试整数(如:从函数中返回的值 ,必须明确地把返回的整数转换为布尔值ture 或false,例如,将值
与0或null进⾏⽐较:
if(dosomething()!=0)
{
//Non-zero returned
}
else
{
//return zero
}
(2)在C#中,可以把字符串⽤作测试的变量。这和其他语⾔中的switch语句不同。⽐如:
string testStr = func2();
switch(testStr)
{
case "for you":
Console.WriteLine("for you");
break;
case "for everyone":
Console.WriteLine("for everyone");
break;
default:
Console.WriteLine("error!");
break;
}
另外,C#的switch中每个case后⾯都可以为空或者加break,并且可以使⽤goto在各个case之间进⾏跳转,例如:
int tsetnum=3;
switch (testnum)
{
case 2;
testnum=6;
goto case 3;
case 3:
testnum=9;
default:
break;
}
但是⼀般不建议使⽤goto语句,因为它会造成混乱,使程序不容易调试。
另外,由于C#出现要晚于其他的很多语⾔,所以其中有许多新的语法语句,常⽤的有以下⼏种:
(1)foreach语句
下⾯的代码中可以了解foreach循环的语法,其中假定arrayOfInts是⼀个整型数组:
foreach(int temp in arrayOfInts)
{
Console.WriteLine(temp);
}
其中,foreach循环每次迭代数组中的⼀个元素。它把每个元素的值放在整型的变量temp中进⾏输出遍历。当变量类型不确定时,可以使⽤类型推断功
能。这种⽤法会更多见⼀些。此时,foreach循环变成 :
foreach(var temp2 in arrayOfValues)
{
Console.WriteLine(temp2);
}
注意,foreach循环不能改变集合中各项(上⾯的temp)的值,所以下⾯的代码不会编译:writeline输出数值变量
foreach(var temp2 in arrayOfValues)
{
temp++;
Console.WriteLine(temp2);
}
如果需要迭代集合中的各项,并改变它们的值,就应使⽤for循环。
(2)枚举类型enum
枚举是⽤户定义的整数类型。在声明⼀个枚举时,要指定该枚举的实例可以包含的⼀组可接受的值。不仅如此,还可以给值指定易于记忆的名称。如果在
代码的某个地⽅,要试图把⼀个不在可接受范围内的值赋予枚举的⼀个实例,编译器就会报告⼀个错误。从长远来看,创建枚举可以节省⼤量时间,减少许多⿇烦。
public enum KindsOfSeason{
Spring = 1;
Summer = 2;
Autumn = 3;
Winter = 4;
}
本例在枚举中使⽤⼀个整数值来表⽰四季。现在可以把这些值作为枚举的成员来访问。例如, KindsOfSeason.Spring返回数字1。使⽤这个枚举⼀般
是把合适的值传送给⽅法。
在C#中,枚举的真正强⼤之处是它们在后台会实例化为派⽣于基类System.Enum的结构。这表⽰可以对它们调⽤⽅法,执⾏有⽤的任务。注意因
为.NET FrameWork的执⾏⽅式,在语法上把枚举表⽰可以对它们调⽤⽅法,执⾏有⽤的任务。
System.Enun上的其他⽅法可以返回枚举定义中的值的个数或列出值的名称等。
C#中的⼀些常见的新语句语法就先为⼤家介绍到这,这些其实只能算C#语句中的⼀⼩部分,其他的需要在实际读写程序的过程中去学习积累。
下⼀篇博客将为⼤家介绍C#的对象与类。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论