当前位置导航:炫浪网>>网络学院>>编程开发>>Visual C#教程

Visual C#编程入门之语句

    程序的活动是通过语句(statement)来表达的。C#支持几种不同的语句,许多语句是以嵌入语句的形式定义的。

  块(block)允许在只能使用单个语句的上下文中编写多个语句。块由一个括在大括号“{}”内的语句列表组成。

  声明语句(declaration statement)用于声明局部变量和常量。

  表达式语句(expression statement)用于运算表达式。表达式可以作为语句使用译注3,包括方法调用、使用new运算符进行对象分配、使用“=”和复合赋值运算符进行赋值,以及使用“++”和“--”运算符进行增量和减量的运算。
  选择语句(selection statement)用于根据某个表达式的值,选择执行若干可能语句中的某一个。这一组语句有if和switch语句。
  迭代语句(iteration statement)用于重复执行嵌入语句。这一组语句有while,do,for和foreach语句。

  跳转语句(jump statement)用于传递程序控制。这一组语句有break,continue,goto,throw和return语句。

  try-catch语句用于捕捉在块的执行期间发生的异常。并且,try-finally语句用于指定一个终止代码块,不管异常出现与否,它总是被执行。
  checked和unchecked语句用于控制整型算术运算和转换的溢出检查上、下文。

  lock语句用于获取给定对象的互斥锁,执行语句,然后释放该锁。

  using语句用于获取一个资源,执行一个语句,然后处理该资源。

  表1.5列出了C#的语句,并逐个提供了示例。

  表1.5 C#的语句
语    句 示    例
局部变量声明 static void Main(){   int a;    int b=2,c=3;   a=1;   Console.WriteLine(a+b+c);  }
局部常量声明 static void Main(){   const float pi=3.1415927f;    const int r=25;   Console.WriteLine(pi * r * r);  }
表达式语句 static void Main(){   int i;   i=123;                   //表达式语句   Console.WriteLine(i);     //表达式语句   i++;                       //表达式语句   Console.WriteLine(i);     //表达式语句  }
if语句 static void Main(string[] args){   if(args.Length == 0){     Console.WriteLine("No arguments");   }   else{     Console.WriteLine("One or more arguments");   }  }
  (续表)

语    句 示    例
switch语句 static void Main(string[] args){   int n = args.Length;   switch(n){     case 0:       Console.WriteLine("No arguments");       break;     case 1:       Console.WriteLine("One argument");       break;     default:       Console.WriteLine("{0} arguments", n);       break;    }  }
while语句 static void Main(string[] args){   int i = 0;   while(i < args.Length){     Console.WriteLine(args[i]);     i++;   }  }
do语句 static void Main(){   string s;   do{     s = Console.ReadLine();     if(s!=null)  Console.WriteLine(s);   } while(s != null);  }
for语句 static void Main(string[] args){   for(int i = 0; i < args.Length; i++){     Console.WriteLine(args[i]);   }  }
foreach语句 static void Main(string[] args){   foreach(string s in args){     Console.WriteLine(s);   }  }
break语句 static void Main(){   while(true){     string s = Console.ReadLine();     if (s == null) break;     Console.WriteLine(s);   }  }
continue语句 static void Main(string[] args){   for(int i = 0; i < args.Length; i++){     if (args[i].StartsWith("/")) continue;     Console.WriteLine(args[i]);   }  }
goto语句 static void Main(string[] args){   int i = 0;   goto check;   loop:   Console.WriteLine(args[i++]);   check:   if (i < args.Length) goto loop;  }

(续表)

语    句 示    例
return语句 static int Add(int a, int b){   return a + b; } static void Main(){   Console.WriteLine(Add(1, 2));   return; }
throw和try语句 static double Divide(double x, double y) {   if (y == 0) throw new DivideByZeroException();   return x / y; } static void Main(string[] args){   try{     if (args.Length !=2){       throw new Exception("Two numbers required");     }     double x = double.Parse(args[0]);     double y = double.Parse(args[1]);     Console.WriteLine(Divide(x, y));   }   catch (Exception e) {     Console.WriteLine(e.Message);   } }
checked和unchecked语句 static void Main(){   int i = int.MaxValue;   checked {     Console.WriteLine(i + 1);  //异常   }   unchecked {     Console.WriteLine(i + 1);  //溢出   }  }
lock语句 class Account {   decimal balance;   public void Withdraw(decimal amount) {     lock(this) {       if (amount > balance) {         throw new Exception("Insufficient funds");       }       balance -= amount;     }   } }
using语句 static void Main(){   using (TextWriter w = File.CreateText("test.txt")) {     w.WriteLine("Line one");     w.WriteLine("Line two");     w.WriteLine("Line three");   }  }

相关内容
赞助商链接