1.5C#语言的语句(Statement)

C#语言的语句往往以 ; 结尾。

1.空语句

空语句只含一个 ; 分号。不执行任何操作,可以在需要语句但不需要执行任何操作的地方使用。

;

2.代码块(block)

代码块是由在分隔符 { 和 } 内编写的语句组成。当代码块内语句为一条语句时,往往可以省略花括号,如果多条语句时,此时一般不省略,需要使用花括号来组织多条语句。

{
    //语句;
}

3.声明(declaration)语句

声明语句用于声明变量和常量等。

类型 标识符 = 值;

4.表达式语句

表达式语句用于计算表达式。

statement_expression;

5.Expression-bodied表达式语句

成员目前支持 方法、只读属性、属性、索引器、构造函数、析构函数。

member => expression;

6.checked和unchecked语句

checkedunchecked 语句用于指定将结果存储在变量中、但该变量过小而不能容纳结果值时,是否允许数值运算导致溢出。

checked 关键字用于显式启用对整型类型算术运算和转换的溢出检查,算术溢出会引发异常。

unchecked 关键字用于抑制整型类型的算术运算和转换的溢出检查,算术溢出异常被忽略且通过丢弃任何不适应目标类型的高序位使结果被截断。

static void Main() 
{
    int i = int.MaxValue;
    checked 
    {
        Console.WriteLine(i + 1);        // Exception
    }
    unchecked 
    {
        Console.WriteLine(i + 1);        // Overflow
    }
}

7.lock语句

lock 语句用于获取给定对象的相互排斥锁定,执行语句,然后解除锁定。lock 语句用于限制一次仅允许一个线程访问代码块。持有 lock 时,持有 lock 的线程可以再次获取并释放 lock。 阻止任何其它线程获取 lock 并等待释放 lock。

lock (引用类型表达式)
{
    // Your code...
}
class Account
{
    decimal balance;
    public void Withdraw(decimal amount) 
    {
        lock (this) 
        {
            if (amount > balance) 
            {
                throw new Exception("Insufficient funds");
            }
            balance -= amount;
        }
    }
}

8.using语句

using 语句用于定义一个范围,在此范围内获取资源对象,执行语句,在范围的末尾将释放资源对象。

static void Main() 
{
    //在范围内创建对象
    using (TextWriter w = File.CreateText("test.txt")) 
    {
        //使用对象
        w.WriteLine("Line one");
        w.WriteLine("Line two");
        w.WriteLine("Line three");
    //在范围末尾释放对象
    }
}
//支持var局部变量
using (var file = new StreamReader("C:\\myfile.txt")) 
{
    //...
}

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/csharp/csharplang/7883.html

(0)
上一篇 2021年1月5日 23:02
下一篇 2021年1月6日 02:35

相关推荐

  • 2.8C#函数成员之运算符(Operator)

    1.运算符声明 所有运算符都必须声明为 public 和 static。 2.隐式和显式运算符 implicit 或 explicit 关键字分别用于定义隐式转换或显式转换,定义转换的类型必须是该转换的源类型或目标类型,可用两种类型中的任何一种类型来定义两种用…

    C#语言教程 2021年2月8日
    02500
  • 2.1C#语言的变量(Variable)

    1.变量声明和初始化 2.变量分类 x 是一个静态变量, y 它是一个实例变量,a 是一个值参数,b 是一个引用参数,c 是一个输出参数,v[0] 是一个数组元素,i 是一个局部变量。 2.1成员变量 名称 修饰符 静态变量 用 static 修饰 实例变量 —————— 2.2局部变量 …

    C#语言教程 2021年2月1日
    05340
  • 1.4C#语言的类型(Type)

    C # 语言有两种类型:值类型 和 引用类型。值类型的变量直接存储数据,而引用类型的变量则存储对数据(称为“对象”)的引用。 System.Object类(别名object) 是所有类型的最终基类。值类型 派生自 System.ValueType类 (派生自 System.Object类)。派生自&…

    C#语言教程 2021年1月4日
    08160

发表回复

登录后才能评论