gpt4 book ai didi

c# - 由于 clear 不起作用,如何清除数组上的元素?

转载 作者:行者123 更新时间:2023-12-04 10:46:52 27 4
gpt4 key购买 nike

这是我的代码,但是 clear方法不起作用,但我找不到错误。
这是第一次明确的方法不起作用,有人可以帮助我吗?

using System; 
using System.Collections.Generic;
public class test{
public static void Main()
{
try {
int[] myArr = {-1, 4, 8, 6};
PrintIndexAndValues(myArr);
Console.WriteLine();

Console.WriteLine("Taking index out of bound:");
Array.clear(myArr, 1, 2);
Console.WriteLine("Array After Operation:");
PrintIndexAndValues(myArr);
}

}
public static void PrintIndexAndValues(int[] myArr)
{
for (int i = 0; i < myArr.Length; i++) {
Console.WriteLine("{0}", myArr[i]);
}
}
}

最佳答案

来自 Arrays (C# Programming Guide) :

The number of dimensions and the length of each dimension are established when the array instance is created. These values can't be changed during the lifetime of the instance.



如果您希望能够按照您想要的方式使用 Clear(),您应该使用 List 来代替:
List<int> myList = new List<int>{-1, 4, 8, 6};

// Do some stuff with your list

myList.Clear();

编辑:
您的 PrintIndexAndValues 实际上只打印值,您可以这样做:
public static void PrintIndexAndValues(List<int> myList) 
for (int i = 0; i < myList.Count; i++)
{
Console.WriteLine("{0}: {1}", i, myList[i]);
}

Edit2:刚刚意识到您可能想删除数组的第一个和最后一个元素,而不是清除整个数组?
这应该可以解决问题:
myList.RemoveAt(3)
myList.RemoveAt(0)

关于c# - 由于 clear 不起作用,如何清除数组上的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59666786/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com