草庐IT

可变数组

全部标签

c# - 如何删除或隐藏特定页面中的工具栏项错误 : System. IndexOutOfRangeException:索引超出数组范围

我正在尝试Remove()或Clear()ToolbarItems。这是我在MainPage.cs中创建ToolbarItem的代码publicpartialclassMainPage:MasterDetailPage{publicToolbarItemcCounter=newToolbarItem(){Icon="picture.png"};publicToolbarItempPo=newToolbarItem(){Text="-"};publicMainPage(){InitializeComponent();if(Device.OS==TargetPlatform.iOS){pr

c# - "fluent"(或可链接)方法必须是不可变的吗?

假设我有一个具有一些属性和一些用于操作这些属性的方法的类:publicclassPersonModel{publicstringName{get;set;}publicstringPrimaryPhoneNumber{get;set;}publicvoidLoadAccountInfo(AccountInfoaccountInfo){this.Name=accountInfo.Name;}publicvoidLoadPhoneInfo(PhoneInfophoneInfo){this.PrimaryPhoneNumber=phoneInfo.PhoneNumber;}}典型的用法是:v

C# Windows 8 Store (Metro, WinRT) 字节数组到 BitmapImage

我正在开发一个将滤镜应用于图像的Windows8Metro应用程序。我有该应用程序的Web版本并想移植它。但众所周知,WinRT并不具备.NET提供的所有优点:/目前我正在字节数组上应用过滤器,我想保持这种状态,因为它非常快!因此,在过去的几天里,我一直在寻找将StorageFile转换为byte[],然后将byte[]转换为BitmapImage的方法。到目前为止,我已经设法完成了第一个(StorageFile到byte[])。这是我的做法:publicasyncTaskImageFileToByteArray(StorageFilefile){IRandomAccessStream

c# - 数组(结构类型)上的 Where 是否经过优化以避免不必要的结构值复制?

出于内存性能的原因,我有一个结构数组,因为项目的数量很大,并且项目会定期被抛出,因此会扰乱GC堆。这不是我是否应该使用大型结构的问题;我已经确定GC垃圾处理会导致性能问题。我的问题是当我需要处理这个结构数组时,我应该避免使用LINQ吗?由于结构不小,按值传递它是不明智的,而且我不知道LINQ代码生成器是否足够智能以执行此操作。结构如下所示:publicstructManufacturerValue{publicintManufacturerID;publicstringName;publicstringCustomSlug;publicstringTitle;publicstringD

c# - C#中的二维数组切片

我想在C#中对二维数组进行切片。我有double[2,2]价格并且想要检索此数组的第二行。我试过prices[1,],但我觉得它可能是别的东西。提前致谢。 最佳答案 没有直接的“切片”操作,但是你可以定义一个这样的扩展方法:publicstaticIEnumerableSliceRow(thisT[,]array,introw){for(vari=0;i 关于c#-C#中的二维数组切片,我们在StackOverflow上找到一个类似的问题: https://s

c# - 如何在 DateTime 值数组中查找平均日期/时间

如果我有一组DateTime值:ListarrayDateTimes;如何找到其中的平均DateTime?例如,如果我有:2003-May-2115:00:002003-May-2119:00:002003-May-2120:00:00平均值应该是:2003-May-2118:00:00 最佳答案 如果你有大列表你可以使用下面的方法varcount=dates.Count;doubletemp=0D;for(inti=0;i 关于c#-如何在DateTime值数组中查找平均日期/时间,我

c# - 为什么 System.Drawing Rectangle、Point、Size 等可变结构而不是类?

Microsoft决定制作这些结构有什么原因吗?这三个都是可变的。如果它们是不可变的或引用类型,我会发现它们更容易处理。如果有理由说它们必须是结构体,那么为什么它们是可变的? 最佳答案 为什么是结构体值语义这些值的两个相同实例之间没有本质区别。任何具有坐标[2,3]的Point都等于具有相同坐标的任何其他点,很像任何两个具有相似坐标的int值相等。这符合设计指南:Itlogicallyrepresentsasinglevalue,similartoprimitivetypes(integer,double,andsoon).性能Va

c# - 为什么 C# 数组类型 IsSerializable 属性为 True?

我很好奇为什么C#数组的IsSerializable属性返回true。数组没有任何Serializable属性,它们也没有实现ISerializable接口(interface),那么为什么要将IsSerializable属性设置为真?当我尝试下面的代码时,它在控制台中输出“True”:Console.WriteLine(newstring[0].GetType().IsSerializable);输出是:TrueTryitonline我的.NET运行时版本是3.5。 最佳答案 ArraysdoesnothaveanySeriali

c# - 在 .NET 中将流(未知长度)转换为字节数组的最佳方法?

我有以下代码从Stream(在本例中是从命名管道)读取数据并将其写入字节数组://NPSSisaninstanceofNamedPipeServerStreamintBytesRead;byte[]StreamBuffer=newbyte[BUFFER_SIZE];//sizedefinedelsewhere(lessthantotalpossiblemessagesize,though)MemoryStreamMessageStream=newMemoryStream();do{BytesRead=NPSS.Read(StreamBuffer,0,StreamBuffer.Lengt

c# - 使用数组作为 string.Format() 的参数

当尝试使用数组作为string.Format()方法的参数时,出现以下错误:FormatException:Index(zerobased)mustbegreaterthanorequaltozeroandlessthanthesizeoftheargumentlist.代码如下:place=newint[]{1,2,3,4};infoText.text=string.Format("Player1:{0}\nPlayer2:{1}\nPlayer3:{2}\nPlayer4:{3}",place);数组包含四个值,String.Format()中的参数也相同。是什么导致了这个错误?(