如何在 C# 中删除数组的元素
本文将介绍使用 C# 代码删除常规数组元素的不同方法,如 where()
子句和移位程序。
在 C# 中使用 where()
子句删除一个数组的元素
在 C# 中,没有现成的方法来删除或添加元素到一个现有的数组。这就是为什么建议使用列表而不是数组。但是我们可以使用 LINQ 的 where()
子句来找到要删除的元素的索引,并跳过该元素。之后,我们将把数组转换成一个没有指定元素的新数组。
下面的程序显示了我们如何使用 where()
子句来删除一个常规数组中的元素。
using System;
using System.Linq;
class StringToFloat {
static void Main(string[] args) {
string[] myArray = {
"a",
"b",
"c",
"d",
"e"
};
Console.WriteLine("Array before deletion");
foreach(string value in myArray) {
Console.WriteLine(value);
}
int indexToRemove = 3;
myArray = myArray.Where((source, index) =>index != indexToRemove).ToArray();
Console.WriteLine("Array after deletion");
foreach(string value in myArray) {
Console.WriteLine(value);
}
}
}
输出:
Array before deletion
a
b
c
d
e
Array after deletion
a
b
c
e
使用 C# 中的移位程序删除数组中的元素
我们将使用元素移位程序来删除常规数组中的元素。
元素移位程序如下。
using System;
using System.Linq;
class StringToFloat {
static void Main(string[] args) {
string[] myArray = {
"a",
"b",
"c",
"d",
"e"
};
Console.WriteLine("Array before deletion");
foreach(string value in myArray) {
Console.WriteLine(value);
}
int pos = 3;
int i;
for (i = pos - 1; i < 4; i++) {
myArray[i] = myArray[i + 1];
}
Console.WriteLine("Array after deletion");
for (i = 0; i < 4; i++) {
Console.WriteLine(myArray[i]);
}
}
}
输出:
Array before deletion
a
b
c
d
e
Array after deletion
a
b
d
e
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。