草庐IT

white_pixels_count

全部标签

c# - 应该避免 IEnumerable 的 Count() 吗?

通常,我使用List,然后在我不再需要更新它们时将它们作为IEnumerable返回。但是,我遇到了一个问题,我实际上需要枚举它们但首先需要知道计数。IEnumerable会枚举每个项目并找到计数(O(N)),还是会依赖于List的Count属性(O(1))?此外,如果IEnumerable是LINQ查询的结果怎么办? 最佳答案 WillIEnumerableenumerateeveryitemandfindthecount(O(N)),orwillitrelyonList'sCountproperty(O(1))?它将使用Coun

c# - 如何从 SqlDataReader 读取 SQL Server COUNT

我正在尝试使用C#SqlDataReader查找表的计数,但我一直在获取invalidattempttoreadwhennodataispresent我的代码:stringsql="SELECTCOUNT(*)FROM[DB].[dbo].[myTable]";SqlCommandcmd=newSqlComman(sql,connectionString);SqlDataReadermySqlDataReader=cmd.ExecuteReader();intcount=mySqlDataReader.GetInt32(0);//HereiswhereIgettheerror.我知道我

c# - DataGridView RowCount 与 Rows.Count

如果我有一个DataGridViewuxChargeBackDataGridView。以下是否在语法上不同但实际上是相同的?:intnumRows=uxChargeBackDataGridView.Rows.Count;intnumRowCount=uxChargeBackDataGridView.RowCount;如果uxChargeBackDataGridView为空则两者都等于1;因此,如果其中任何一个等于1,我可以假设用户没有输入任何数据,这是否符合逻辑?我的WinForms应用程序有一个名为RUN的按钮-我可以使用上面的测试来确定是否启用此按钮,即仅在numberofrows

c# - IEnumerable<T>.Count 在哪些情况下进行了优化?

使用reflector我注意到System.Linq.Enumerable.Count方法中有一个条件可以针对IEnumerable的情况对其进行优化。passed实际上是一个ICollection.如果转换成功,Count方法不需要遍历每个元素,而是可以调用ICollection的Count方法。基于此,我开始认为IEnumerable可以像集合的只读View一样使用,而不会出现我最初基于IEnumerable的API预期的性能损失我感兴趣的是是否优化了CountIEnumerable时仍然成立是Select的结果关于ICollection的声明,但根据反射(reflect)的代码,

c# - 在 null IEnumerables 上为 Count() 返回零

我已经厌倦了使用这样的代码:varcount=0;if(myEnumerable!=null){count=myEnumerable.Count();}这有点迂腐:varcount=(myEnumerable??newstring[0]).Count();有没有更简洁的方法来做到这一点?我曾经在IEnumerable上有一个(名字不好的)PhantomCount扩展方法,它使用了我的第一个代码示例,但它有一些味道(除了名字之外)。 最佳答案 问题实际上出在创建这些可枚举对象的任何方面。除非你有充分的理由,否则任何生成可迭代集合的东西

c# - Array.Length 与 Array.Count

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:countvslengthvssizeinacollection在.NET中,几乎所有集合都有.Count属性。有时我想知道是否直接将它放在Array上,而不是通过ICollection会更好。这只是你在脑海中为数组做一个异常(exception)而已。那么在这种情况下是“更正确”还是“更统一”更好?

c# - 优化 LINQ Count() > X

这个问题在这里已经有了答案:EfficientLinqEnumerable's'Count()==1'test(7个答案)关闭6年前。问题:给定IEnumerable,如何检查包含超过x的序列项目?MCVE:staticvoidMain(string[]args){vartest=Test().Where(o=>o>2&&o1)//howtooptimizethis?foreach(vartintest)//consumerConsole.WriteLine(t);}staticIEnumerableTest(){for(inti=0;i这里的问题是什么Count()将运行完整的序列,

c# - WMPLib : player. mediaCollection.getAll().count 始终为 0

我正在尝试编写代码以从用户的WindowsMediaPlayer库中读取每个项目。此代码适用于大多数用户,但对于某些用户,当他们的WindowsMediaPlayer库中显然有成百上千个项目时,getAll()将返回一个空列表。varplayer=newWindowsMediaPlayer();varcollection=player.mediaCollection;varlist=collection.getAll();inttotal=list.count;我通过添加对wmp.dll的COM引用来引用WMPLib命名空间。我的应用程序附带Interop.WMPLib.dll。某些用

c# - 线栅格化 : Cover all pixels, 与线渐变无关?

基本上,我想使用线性算法来确定要为我的raycaster检查哪些单元格的碰撞。Bresenham这不是很好,因为它使用统一厚度方法,这意味着它忽略了至少没有覆盖一半线的单元格。一点也不好,因为这意味着我的线的某些部分没有被检查是否与单元格相交,从而导致错误。我似乎找不到任何“粗线”算法,谁能帮我找到一个?绿:我想要什么。红色:我目前拥有的和不想要的。 最佳答案 我遇到了与您完全相同的问题,并且找到了一个非常简单的解决方案。通常,Bresenham有两个连续的if来确定是否应该增加两个维度的坐标:publicvoiddrawLine(

javascript - 为什么 selectivizr.js 在 IE8 中导致 "white screen of death"?

包括selectivizr.js导致IE8根本不显示/呈现任何内容,但IE8在IETester管理。它还会下载所有内容,我可以在事件栏和DOM检查器中看到。而且链接甚至在那里,我在导航区域周围移动光标时看到了。但它根本不显示任何内容。我通过大量搜索发现的唯一错误修复是将zoom:1;应用于body,但它对我的情况没有帮助。如果能得到任何调试帮助,我将不胜感激。Pagepreview. 最佳答案 本身不是解决方案,但作为解决方法,移动@font-face申报入(即不将其放入ed样式表中)在许多情况下似乎可以解决此问题。似乎与selec