【c# – 数组或对象的指针/引用句柄是否会影响其大小?】教程文章相关的互联网学习教程文章

c# – 正确地将匿名类型声明为数组以保持范围【代码】

我想要做的就是正确地声明var place,这样一旦我到达foreach循环它仍然在范围内.我假设我需要在连接的if语句之前声明它.这是一个正确的假设,如果是这样,我该如何申报?谢谢!using (var db = new DataClasses1DataContext()){if (connections == "Connections"){var place = (from v in db.pdx_apartswhere v.Latitude != null && v.Region == region && v.WD_Connect >= 1select new{locName = v.Apartment_complex.Trim().Replace...

c# – 从具有NaN的多维数组中找出最小值【代码】

我有一个二维数组(双[,]),我想知道什么是最小的.我尝试了Linq.Select.Min,但由于我的数组通常包含NaN值,因此minvalue总是NaN. 所以,我需要一些方法来找到“跳过”NaN的最小值. 任何帮助深表感谢!解决方法:今天是扩展方法的一天!使用它在你的所有double [,]上都有一个通用的Min()函数! 这是一些通用[,]扩展.请注意,这仅适用于实现IComparable的类型 这个没有忽略:public static T Min<T>(this T[,] arr) where T : IComparable ...

c# – 如何从数组中查找字符串索引(前三个字符)【代码】

我想找到一个字符串的索引只为数组中的前三个字符 我有一个月的数组string[] arrayEnglishMonth = { "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER" };如果我写int t_ciMonth=8;(AUGUST)int pos = Array.IndexOf(t_caMonth, arrayEnglishMonth[t_ciMonth - 1]);但是,如果我只希望索引只有前三个字符,即AUG如何找到它?解决方法:你有两个我能想到的选...

C#传递并返回多维数组【代码】

我有一个2D数组,我随机填充数字.我为此工作的代码很好,但是,为了更好地组织我的代码,我想把“随机填充数字”部分放入方法中. 该数组是从Main()方法创建的,因为我计划传递数组并将数组返回到其他将操纵它的方法.然后我尝试编写填充数组的方法,但我不确定如何传递多维数组,或者返回一个.根据MSDN,我需要使用“out”而不是返回. 这是我到目前为止所尝试的:static void Main(string[] args){int rows = 30;int columns = 80;int[,] Pr...

c# – 正在读取int []数组,而另一个线程更新int []数组安全吗?

两个线程.数组中第一个疯狂读取元素.第二个同样是通过读取元素并将它们递增任意量来更新元素. 这样安全吗?在这种情况下会出现什么问题吗?我不介意读取线程在更新线程仍在更新过程中读取“旧”值.我只是想确保读者不会读取未写入的数字,也不会发生异常.解决方法:int更新在所有可以执行托管代码的cpu体系结构上都是原子的.换句话说,您将不会读取只有写入线程修改的单个字节的值.值类型值大于32位,如long和double不保证原子.对象引用...

c# – 字典是否可以将数组作为键?【代码】

面对字典中的问题.数组是否可以成为价值的关键???Dictionary<string[], int> di = new Dictionary<string[], int>(); di.Add(new string[] {"1","2" }, 1);di.Add(new string[] {"2","3" }, 2);MessageBox.Show(di[new string[] { "2", "3" }].ToString()); // Here KeyNotFoundException occurred.为什么例外?解决方法:默认情况下,只会比较数组的引用,因此您必须这样做 >提供自定义IEqualityComparer<string[]>或>使用Tuple<stri...

c# – 如何使用LINQ删除数组中的重复元素?如果重复,则删除元素?【代码】

int [] n=new int[10]{2,3,33,33,55,55,123,33,88,234}; output=2,3,123,88,234;使用LINQ我可以通过连续检查使用两个for循环来做它.但我需要一个更简单的方法使用LINQ 它没有删除重复..通过distinct删除重复项将给出= 2,3,123,33,55,88,234我的输出应该是= 2,3,123,,88,234;解决方法:我结合了你的分组想法和matiash的数量.不确定它的速度.var result = n.GroupBy(s => s).Where(g => g.Count() == 1).Select(g => g.Key);更新:我测...

c# – 协方差行为中的数组对象[]【代码】

I had a compile error while assinging int[] to object[](问题不是我的). 接受的答案表明这是因为数组协方差(请为了更好地理解而阅读问题和答案). 现在我的情况是,虽然我不能将int []分配给object [],因为int是值类型(struct)我想知道为什么我现在可以这样做:var arrayOfObjects = new object[] { 58, 58, 78 };// it accepts values types as initializers!如果我正在为数组对象初始化值类型,为什么这会起作用?不应该互惠不接...

c# – 对字节列表或字节数组列表进行排序【代码】

LINQ在ThenBy等方面有很好的OrderBy功能,但我怎样才能在List< List< byte>>上进行这项工作.按第1列排序,然后按第2列排序,依此类推. 字节列表列表:[0] = {0, 1, 2, 3, 4} [1] = {0, 0, 2, 4, 1} [2] = {1, 2, 2, 1, 1} [3] = {1, 0, 2, 2, 2}实际上,当我创建string []时,我做了同样的事情,但是将字节转换为字符串然后返回是混乱的,结果因某些原因而有所不同. 我想得到:[0] = {0, 0, 2, 4, 1} [1] = {0, 1, 2, 3, 4} [2] = {1, 0, ...

C# – 我可以使用数组初始化程序构建一个字节数组吗?【代码】

我想使用数组初始化程序从另一个字节数组中构建一个字节数组,以及构成标题/尾部的其他一些字节.基本上,我想做这样的事情:byte[] DecorateByteArray(byte[] payload) {return new byte[] { 0, 1, 2, payload.GetBytes(), 3, 4, 5}; }不幸的是,上面的GetBytes()是虚构的. 这有什么好的/优雅的方式吗?我通过使用BinaryWriter将所有内容写入MemoryStream,然后使用MemoryStream.ToArray()将其转换为字节数组来解决这个问题,但它感觉有...

c# – WPF INotifyPropertyChanged没有更新数组属性?【代码】

我创建了一个小例子来演示我遇到的问题. 我的班级第一名:public class DisplayRow : INotifyPropertyChanged {public event PropertyChangedEventHandler PropertyChanged;private int?[] values;private string title;public string Title{get { return title; }set{title = value;if (PropertyChanged != null) PropertyChanged(this, new PropertyChangedEventArgs("Title"));}}public int?[] Values{get { return values; }se...

如何在C#中将视频转换为字节数组?【代码】

我正在使用c#.net紧凑框架3.5,我想将视频文件转换为字节数组,以便我可以将其上传到服务器上. 我以类似的方式进行图像上传,获得成功结果.HttpWebRequest request; request.ContentType = "image/jpeg"; request.ContentLength = byteArray.Length; request.Method = "PUT";imageToByteArray(img).CopyTo(byteArray, 0); using (Stream requestStream = request.GetRequestStream()) {requestStream.Write(byteArray, 0, (int)Fs.Le...

计算多维数组特定维度中的项目(C#)【代码】

我正在使用多维数组来跟踪答案:public string[,] answersArray = new string[50, 10];数组的第一个维度跟踪问题(最多50个问题),而第二个维度跟踪每个问题的答案(最多10个).每个问题的答案数量都是可变的.在加载问题时,我想确定该特定问题的答案数量.然后我可以在for循环中使用该数量来加载并显示这些答案.有没有一种简单的方法可以获得这个,或者我必须自己写一些东西?我知道我可以声明另一个数组来跟踪每个问题的答案数量,并使用...

c# – 对格式化的时间字符串数组进行排序【代码】

我正试图对我的arraylist进行排序. 数组列表由时间格式的数据组成. 阵:9:15 AM, 10:20 AM我该如何排序? 我从下面的代码得到的结果是:10:20 AM 9:15 AM以下是我的代码:String timeText = readFileTime.ReadLine();timeSplit = timeText.Split(new char[] { '^' });Array.Sort(timeSplit);foreach (var sortedArray in timeSplit){sortedTimeListBox.Items.Add(sortedArray);}解决方法: Array.Sort(timeSplit, delegate(string f...

c# – 在ASP.NET MVC视图中转换IEnumerable(到数组,列表)【代码】

似乎在Views中,可用的库有限(是真的吗?),见下文: 我的问题是如何将IEnumerable转换为数组或列表?我通常可以在常规C#文件中使用ToArray(),ToList()或Cast< T>()等方法,但它们在View(ASP.NET MVC)中似乎都消失了.解决方法:<%@ import namespace =System.Linq‘%> 您还可以在Web.config中添加名称空间,即:<system.web><pages><namespaces><add namespace='System.Linq' /></namespaces></pages> </system.web>