以下代码哪个效率更高或占用资源更小呢?推荐哪个呢?
1、
string a = "";
for(int i..)
{
   a = userBill.GetName(i);
}
还是:
string a;
for(int i..)
{
a = userBill.GetName(i);
}
还是for(int i..)
{
string a = userBill.GetName(i);
}2.
DataSet ds = new DataSet();
....
ds = userBill.GetUser();
还是:
DataSet ds;
ds = userBill.GetUser();

解决方案 »

  1.   

    这个应该不存在效率问题吧,
    对于第一种情况:
      对于一个变量来说,应该要在定义时,就为其初始化。如果不这样,编译器会警告,但是可以编译通过。不过对于一个良好的编程习惯来说,应该在变量定义时,就初始化。
      在for语句中定义的变量,它的作用域只在这个for语句中。这个跟效率应该没有关系吧。
    对于第二种情况:
      两种都是一样的,只不过DataSet ds这样定义后,ds这个变量的值为null。当ds = new DataSet的时候,ds变量才引用一个实例。就我个人而言,尽量使用第二种方式。以防止忘了实例化ds,在下边的程序中,使用了ds时,出现“未将对象引用设置到对象实例”这样的错误。