Tag: 数组

C#按值复制数组

我有一个类型化的数组MyType[] types; 我想制作这个数组的独立副本。 我试过这个 MyType[] types2 = new MyType[types.Length] ; types2 = types ; 但这会创建对第一个的引用。 然后我试过了 Array.Copy( types , types2 , types.Length ) ; 但我有同样的问题:更改第一个数组中的值也会更改副本中的值。 如何创建Array,IList或IEnumerable的完全独立或深层副本?

如何删除数组中的选定元素?

我有这个任务,我必须从数组中删除一个选定的元素,所以我想出了这个代码: strInput = Console.ReadLine(); for (int i = 0; i < intAmount; i++) { if (strItems[i] == strInput) { strItems[i] = null; for (int x = 0; x < intAmount-i; x++) { i = i + 1; strItems[i – 1] = strItems[i]; } intAmount = intAmount – 1; } } 问题是,假设我有一个数组[1,2,3,4,5,] ,我想删除1 。 输出将是[2,3,4,5,5] 。 […]

在根元素中使用XmlSerializer和数组

我有一个类似于以下的XML文档: … … … 我希望使用System.Xml.Serialization属性来简化XML反序列化。 我遇到的问题是我无法弄清楚如何指定根节点包含一个数组。 我尝试过创建以下类: [XmlRoot(“scan_details”)] public class ScanDetails { [XmlArray(“object”)] public ScanDetail[] Items { get; set; } } public class ScanDetail { [XmlAttribute(“name”)] public string Filename { get; set; } } 但是,当我将XML反序列化为ScanDetails对象时, Items数组保持为null 。 如何反序列化根节点中的数组?

不使用Array.Reverse()反转数组

如何在不使用Array.Reverse()方法的情况下反转数组(在C#中)? 例如, int[] arr = {1,3,4,9,8}; // some code here Console.WriteLine(string.Join(“,”, arr)); 应该导致 8,9,4,3,1 我把这作为面试任务。

在C#中搜索字节数组中的最长模式

我需要编写有效且快速的方法来搜索给定模式的字节数组。 我这样写,你怎么想,怎么改进? 它有一个bug,它不能返回长度为1的匹配。 public static bool SearchByteByByte(byte[] bytes, byte[] pattern) { bool found = false; int matchedBytes = 0; for (int i = 0; i = pattern.Length) { for (int j = 1; j < pattern.Length; j++) { if (bytes[i + j] == pattern[j]) { matchedBytes++; if (matchedBytes == pattern.Length – 1) { return true; […]

如何将一行值从2D数组复制到一维数组?

我们有以下对象 int [,] oGridCells; 它仅用于固定的第一个索引 int iIndex = 5; for (int iLoop = 0; iLoop < iUpperBound; iLoop++) { //Get the value from the 2D array iValue = oGridCells[iIndex, iLoop]; //Do something with iValue } 在.NET中是否有办法将固定的第一个索引处的值转换为单个维度数组(除了通过循环值)? 如果数组只循环一次,我怀疑它会加速代码(并且可能会使代码变慢)。 但是如果数组被大量操作,那么单维数组比多维数组更有效。 我提出这个问题的主要原因是看它是否可以完成以及如何完成,而不是将其用于生产代码。

使用linq查询对象数组

我想知道如何查询对象数组。 例如,我有一个像CarList这样的数组对象。 所以CarList [0]会把对象Car给我。 汽车有属性Model和Make。 现在,我想使用linq查询数组CarList以获取模型名为“bmw”的Make of a Car。 我尝试了以下内容 var carMake = from item in CarList where item .Model == “bmw” select s.Make; 我收到了错误 无法找到源类型CarList []的查询模式的实现 我无法将CarList从数组更改为List 之类的东西,因为CarList从Web服务中作为数组返回到我。 请告诉我这是如何解决的。 如果您可以使用C#代码解释,那将会很棒。 提前致谢。

将数组传递给SQL Server存储过程

如何使用C#将数组变量传递给SQL Server存储过程并将数组值插入整行? 提前致谢。 SQL Server表: ID | Product | Description ——————————- 8A3H | Soda | 600ml bottle C#数组: string[] info = new string[] {“7J9P”, “Soda”, “2000ml bottle”}; SQL Server存储过程: ALTER PROC INSERT (@INFO_ARRAY ARRAY) AS BEGIN INSERT INTO Products VALUES (@INFO_ARRAY) END

从数组中选择随机字符串

如何从我的arrays中挑选一个随机字符串,而不是两次选择相同的字符串。 string[] names = { “image1.png”, “image2.png”, “image3.png”, “image4.png”, “image5.png” }; 这可能吗? 我正在考虑使用 return strings[random.Next(strings.Length)]; 但这有可能两次返回相同的字符串。 或者我错了吗? 我应该使用像List这样的其他东西来实现这一目标。 欢迎任何反馈。

如何检查我的数组中是否有重复的值?

所以这是我的arrays。 double[] testArray = new double[10]; // will generate a random numbers from 1-20, too lazy to write the code 我想创建一个搜索循环来检查是否有重复的值。 我怎么做? 我宁愿不使用任何特殊的内置方法,因为这是一个小数组。