在C#中初始化數(shù)組時,大括號{}和括號[]之間有什么不同?

我真的很想知道這些線條之間有什么不同?

//with curly braces
int[] array2 = { 1, 2, 3, 4, };
//with brackets
int[] array3 = [1, 2, 3, 4,];

Console.WriteLine(array2[1]);
Console.WriteLine(array3[1]);

//the output is the same.

我想知道在初始化值時使用花括號和方括號有什么不同。

? 最佳回答:

在你給出的例子中,它們的意思是一樣的。但集合表達(dá)式通常更靈活。特別地:

  • 他們可以創(chuàng)建除arrays之外的集合實(shí)例
  • 他們可以使用擴(kuò)展運(yùn)算符來包含序列

For example:

ImmutableList<int> x = [0, .. Enumerable.Range(100, 5), 200];

這創(chuàng)建了一個值為0、100、101、102、103、104、200的不可變整數(shù)列表。

請注意,雖然集合初始化器也可以以某種靈活的方式用于初始化non-array集合類型,但它們比集合表達(dá)式更有限,仍然需要new部分。例如:

// Valid
List<int> x = new() { 1, 2, 3 };

// Not valid
List<int> x = { 1, 2, 3 };

// Not valid (collection initializers assume mutability)
ImmutableList<int> x = new() { 1, 2, 3 };

集合表達(dá)式解決了這兩個問題。

主站蜘蛛池模板: 中文字幕亚洲一区二区三区| 国产剧情国产精品一区| 国产一区二区影院| 亚洲色精品vr一区二区三区| 人妻互换精品一区二区| 美女视频在线一区二区三区| 亚洲国产精品成人一区| 精品国产天堂综合一区在线| 亚洲一区二区成人| 亚欧成人中文字幕一区 | 亚洲一区二区三区深夜天堂| 香蕉一区二区三区观| 一区二区在线视频免费观看| 日本一区二区三区日本免费| 久久人妻内射无码一区三区| 无码AⅤ精品一区二区三区| 国产精品一区二区香蕉| 成人欧美一区二区三区在线视频| 久久精品无码一区二区无码| 无码少妇一区二区| 久久久久无码国产精品一区| 免费一区二区三区| 日韩av片无码一区二区三区不卡| 日韩精品午夜视频一区二区三区| 免费一本色道久久一区| 国模视频一区二区| 无码欧精品亚洲日韩一区夜夜嗨| 久99精品视频在线观看婷亚洲片国产一区一级在线 | 波多野结衣一区二区免费视频| 中文字幕精品一区二区日本| 无码人妻AⅤ一区二区三区 | 视频在线观看一区二区| 全国精品一区二区在线观看| 国产精品第一区第27页| 国精品无码一区二区三区左线| 久久中文字幕一区二区| 亚洲AV无码一区二区三区牛牛 | 成人无码AV一区二区| 无码少妇一区二区| 久久亚洲日韩精品一区二区三区| 亚洲国产情侣一区二区三区|