在C#中声明或创建和初始化数组后,为数组分配值有什么区别?

时间:2016-07-06 07:06:53

标签: c# arrays

在教程中,我一直看到有两种方法可以在C#中为数组赋值。

第一种方法是:

double[] values = {23.245, 14.22,12.00};

第二种方法是:

double[] values = new double[] {23.245, 14.22, 12.00};

如果有人向我解释两者之间的区别,我将不胜感激。

干杯。

2 个答案:

答案 0 :(得分:3)

第一个使用数组初始值设定项的概念。这是一种语法糖。有关详细信息,请查看here

答案 1 :(得分:1)

绝对没有区别......

IL_0000:  ldc.i4.3    
IL_0001:  newarr      System.Double
IL_0006:  dup         
IL_0007:  ldtoken     <PrivateImplementationDetails>.DBF4DA99AFD5E0399193CCEAA18D1DC95D64CC38
IL_000C:  call        System.Runtime.CompilerServices.RuntimeHelpers.InitializeArray
IL_0011:  pop         
IL_0012:  ret         

这就是使用任何一个语句

编译成的内容