Tag: 数组

结构和类对象数组的内存分配

最后一天我正在阅读C#参考,在那里我看到了一个声明。 请看下面的陈述。 语境: 对于Point使用结构而不是类可以在运行时执行的内存分配数量有很大差异。 下面的程序创建并初始化一个包含100个点的数组。 将Point实现为类,实例化101个单独的对象 – 一个用于数组,一个用于100个元素。 class Point { public int x, y; public Point(int x, int y) { this.x = x; this.y = y; } } class Test { static void Main() { Point[] points = new Point[100]; for (int i = 0; i < 100; i++) points[i] = new Point(i, i*i); […]

将一个3D数组的体积展平为一维对象数组

给我一个类型的3D地图,其长度和宽度是均匀的但深度是锯齿状的: public class Map { T[,][] map; … } 返回由2D区域定义的体积内存在的所有类型对象的1D数组以及该区域内所有深度的最佳方法是什么。 例如,我可能有一个数组符号覆盖,如下所示: public IEnumerable this[Rectangle area] { get {…} } 要不就 public IEnumerable this[int x, int y, int width, int length] { get {…} } 老实说,我希望有一个快速的LINQ解决方案,但性能优于解决方案的视觉优雅。 返回的展平数组中对象的顺序并不重要。 如果有人对此有任何建议或经验,请分享您的智慧。 或者,如果有我可以使用的另一个数据结构可以执行我不知道的相同function,我很乐意使用它。 如果我的问题不清楚,请询问更多细节。

C#如果item不在数组中

我有一个包含这3个项目的数组: string[] departmentArray = { “Warranty Service Representative”, “Warranty Service Administrative Manager”, “Warranty and Site Administrator” }; 我有这个字符串 var department = “Warranty Service Representative” 我有这个条件,假设测试字符串部门是否在departmentArray if (Array.Exists(departmentArray, element => element != department)){ } 显然字符串在数组中,所以它应该返回false,但是对于我的字符串,这返回true。 我究竟做错了什么?

C#中的字符串数组

我在字符串数组中插入字符串元素时遇到问题…例如,我有三个赋值行: a = b b = c c = e 然后我想在string[]变量中插入这六个变量。 我使用以下代码,但此代码仅插入最后一个赋值变量(c,e)。 for (int i = 0; i < S; i++) // S = 3 number of assignment line { variables = assigmnent_lines[i].Split('='); }

C#,For循环和速度测试……第二次完全相同的循环更快?

public Int64 ReturnDifferenceA() { User[] arrayList; Int64 firstTicks; IList userList; Int64 secondTicks; System.Diagnostics.Stopwatch watch; userList = Enumerable .Range(0, 1000) .Select(currentItem => new User()).ToList(); arrayList = userList.ToArray(); watch = new Stopwatch(); watch.Start(); for (Int32 loopCounter = 0; loopCounter < arrayList.Count(); loopCounter++) { DoThings(arrayList[loopCounter]); } watch.Stop(); firstTicks = watch.ElapsedTicks; watch.Reset(); watch.Start(); for (Int32 loopCounter = 0; loopCounter […]

C#两个数组的相似之处

必须有更好的方法来做到这一点,我敢肯定…… // Simplified code var a = new List() { 1, 2, 3, 4, 5, 6 }; var b = new List() { 2, 3, 5, 7, 11 }; var z = new List(); for (int i = 0; i < a.Count; i++) if (b.Contains(a[i])) z.Add(a[i]); // (z) contains all of the numbers that are […]

填充数组以避免索引超出数组错误范围的方法

当我查询它时,我希望在我的列表中至少有183个项目,但有时候我的提取结果导致项目数低于183.我的当前修复假定在计数小于183的情况下填充数组。 if (extractArray.Count() < 183) { int arraysize= extractArray.Count(); var tempArr = new String[183 – arraysize]; List itemsList = extractArray.ToList(); itemsList.AddRange(tempArr); var values = itemsList.ToArray(); //– Process the new array that is now at least 183 in length } 但似乎我的解决方案不是最好的。 我将不胜感激任何其他解决方案可以帮助确保每当提取物发生时我至少得到183个项目。

在数组中查找多个索引

说我有这样的数组 string [] fruits = {“watermelon”,”apple”,”apple”,”kiwi”,”pear”,”banana”}; 是否有内置函数允许我查询“apple”的所有索引? 例如, fruits.FindAllIndex(“apple”); 将返回1和2的数组 如果没有,我该如何实施呢? 谢谢!

给一个类对象一个值c#

我有一个名为playcards的类,它inheritance自卡片类。 我将它实例化为一个名为chuckcards的对象。 其中一个数据成员是CARD ID。 我正在尝试为值分配一个int。 它在类中声明为public。 这是它的实例化方式。 playingcards[] chuckcards = new playingcards[10]; 以下是我尝试分配值的方法。 for (int ctr = 1; ctr < 10; ctr++) { chuckcards[ctr].cardID = ctr; temp++; } 我得到的错误是 你调用的对象是空的。 我不知道我做错了什么? 我可以创建一个为每个成员分配值的方法吗? 如果是这样,对某些事情会有痛苦,但我能做到吗? 或者是他们一个简单的方法?

SQL SELECT * FROM XXX WHERE列中的columnName

我正在研究一些SQL代码。 我熟悉语法 SELECT * FROM myTable WHERE myColumn in (‘1′,’2′,’3’); 假设我正在编写一些C#代码,我想在其中使用C#数组(‘1′,’2′,’3’) 。 我怎么做?