一周学会C#(语句一) C#才鸟(QQ:249178521) 1. 语句
· 语句
w 声明语句
w 表达式语句
· 块
w 是语句的一个无名集合
w 包含在{}之间
声明语句; //必须要有分号
表达式语句; //必须要有分号
{
语句;
语句;
...
} //不需要有分号
C#和C++、Java一样,都可以把声明语句当作普通语句。换言之,你可以在任何地方使用声明语句,而不必在程序的开头。 一个块定义了一个范围。任何一个在块中声明的变量在块结束时,它就消失了。 2.throw语句
· throw语句抛出错误
w 检查先前定义的条件时非常有用
w 表达式的类型必须是System.Exception或是它的派生类
string DaySuffix(int days)
{
if (days < 0 || days > 31)
{
throw new
ArgumentOutOfRangeException("days");
}
...
}
3.return语句
· return语句返回一个值
w 表达式必须匹配返回值的类型
w 最好一个函数只有一个retun语句
w 使用return; 来结束一个 void 函数
string DaySuffix(int days)
{
string result;
...
return result;
}
一个函数通过return语句能够返回一个单值。return语句中的表达式的类型必须和函数声明的返回值的类型相同或可以隐式转换为返回值的类型。
如果你要从一个函数中返回多个值,那你可以使用以下方法:
ü 你可以把返回值放在一个结构中
ü 你可以把返回值放在一个数组或集合类的对象中
ü 你可以使用在函数中使用out型参数
4.bool
· bool 是一个关键字
w 它是System.Boolean 的别名
w 它的取值只能为true 和 false
bool love = true;
bool teeth = false;
//正确
System.Boolean love = true;
System.Boolean teeth = false;
//正确
using System;
...
Boolean love = true;
Boolean teeth = false;
//正确
Boolean love = true;
Boolean teeth = false;
//错误,因为没有包含System命名空间,请注意大小写
|
| 5.布尔型操作符
1.赋值 =
2.等于 == !=
3.逻辑 ! && || ^ & |
int tens = (9 * 6) / 13;
int units = (9 * 6) % 13;
bool isFour = tens == 4;
bool isTwo = units == 2;
bool hhg;
hhg = isFour & isTwo;
hhg = !(isFour & isTwo);
hhg = !isFour | !isTwo;
hhg = !hhg;
&&的结果是只有当操作符两边的操作数都是true时才是true。如果&&左边的操作数是false的话,那么不管右边的操作数是false还是true,整个&&表达式的值为false。
||的结果是当操作符两边的操作数只要一个是true的时候就是true。如果&&左边的操作数是true的话,那么不管右边的操作数是false还是true,整个&&表达式的值为true。
!表示取反的意思。
有一种称为“短路”的技术非常有用。例如,左边的表达式可以判断一个值是否为0,然后右边的表达式可以把这个值作为除数。例如:
if ((x != 0) && (y / x > tolerance)) ...
6.if语句
string DaySuffix(int days)
{
string result;
if (days / 10 == 1)
result = "th";
else if (days % 10 == 1)
result = "st";
else if (days % 10 == 2)
result = "nd";
else if (days % 10 == 3)
result = "rd";
else
result = "th";
return result;
}
if语句的条件表达式必须是纯粹的bool型表达式。例如下面的诗句是错误的:
if (currentValue = 0) ...
c#要求所有的变量必须预先明确赋值后才能使用,因此,下列的程序是错误的:
int m;
if (inRange)
m = 42;
int copy = m; //错误,因为m可能不会被赋初值。
在C#中,if语句中不能包含变量声明语句,例如:
if (inRange)
int useless;// 错误
7.switch语句
· 语法
w 用于整数类类型
w case后的标志必须是编译时为常数
w 没有表示范围的缩略形式
string DaySuffix(int days)
{
string result = "th";
if (days / 10 != 1)
switch (days % 10)
{
case 1 :
result = "st"; break;
case 2 :
result = "nd"; break;
case 3 :
result = "rd"; break;
default: //表示不符合上面条件的情况
result = "th"; break;
}
return result;
}
你只能对整型、字符串或可以隐式转换为整型或字符串的用户自定义类型使用switch语句。case标志必须在编译时是常数。
C#中没有Visual Basic中的Is关键字在case中进行比较,例如:
switch (expression())
{
case Is < 42 : //错误
case method() : //错误
}
C#中没有范围比较符。
switch (expression())
{
case 16 To 21 : //错误
case 16..21 : //错误
}
注意:每个case段必须包括break语句,default语句也不例外。
8.while/do
int digit = 0;
while (digit != 10)
{
Console.Write("{0} ", digit);
digit++;
}//没有分号
int digit = 0;
do
{
Console.Write("{0} ", digit);
digit++;
}
while (digit != 10);//有分号
|