c#List删除指定索引
时间: 2023-12-07 12:06:12 浏览: 29
你可以使用C#中的List<T>类的RemoveAt()方法来删除指定索引的元素。以下是一个示例代码:
```csharp
List<string> myList = new List<string>() { "apple", "banana", "orange" };
int indexToRemove = 1; // 要删除的索引
myList.RemoveAt(indexToRemove);
// 输出修改后的列表
foreach (string item in myList)
{
Console.WriteLine(item);
}
```
在上面的示例中,我们创建了一个包含三个元素的字符串列表。然后,我们使用RemoveAt()方法删除了指定索引(1)处的元素("banana")。最后,我们遍历列表并输出修改后的结果。
请注意,索引从0开始计数,所以在上面的示例中,索引1对应着第二个元素("banana")。
相关问题
c#将数组指定索引的数据删除
可以使用以下代码将数组指定索引的数据删除:
```csharp
// 假设 arr 是一个一维数组,要删除的索引是 index
int[] newArr = new int[arr.Length - 1];
for (int i = 0, j = 0; i < arr.Length; i++)
{
if (i != index)
{
newArr[j++] = arr[i];
}
}
// 现在 newArr 就是原数组删除指定索引后的结果,长度为原数组长度减1
```
如果 arr 是一个二维数组,要删除第 rowIndex 行和第 colIndex 列的数据,可以使用以下代码:
```csharp
// 假设 arr 是一个二维数组,要删除的行和列的索引分别是 rowIndex 和 colIndex
int numRows = arr.GetLength(0);
int numCols = arr.GetLength(1);
// 创建一个新数组,将原数组中不是 rowIndex 行和 colIndex 列的数据复制到新数组中
int[,] newArr = new int[numRows - 1, numCols - 1];
for (int i = 0, x = 0; i < numRows; i++)
{
if (i != rowIndex)
{
for (int j = 0, y = 0; j < numCols; j++)
{
if (j != colIndex)
{
newArr[x, y++] = arr[i, j];
}
}
x++;
}
}
// 现在 newArr 就是原数组删除指定行和列后的结果,行数和列数都比原数组少1
```
需要注意的是,这种方式会创建一个新的数组来存储删除后的结果,原数组并不会被修改。如果需要在原数组上直接删除指定索引的数据,可以使用 `List<T>` 类型代替数组。
C#list删除元素
以下是使用C# List的RemoveAt方法删除元素的示例代码:
```csharp
// 创建一个包含一些元素的 List
List<string> names = new List<string>() { "Alice", "Bob", "Charlie", "David", "Emily" };
// 删除指定位置的元素
names.RemoveAt(2); // 删除位置为 2 的元素 ("Charlie")
```
在上面的示例中,我们首先创建了一个包含一些元素的List。然后,我们使用RemoveAt方法删除了索引为2的元素,即"Charlie"。注意,List的索引从0开始,因此第三个元素的索引为2。