小编jon*_*n37的帖子

通用列表FindAll()与foreach

我正在查看通用列表,以根据某个参数查找项目.

总的来说,什么是最好和最快的实施?
1.循环遍历列表中的每个项目,并将每个匹配保存到新列表并返回该列表

foreach(string s in list)
{ 
    if(s == "match")
    {
       newList.Add(s);
    }
} 

return newList;
Run Code Online (Sandbox Code Playgroud)

或者
2.使用FindAll方法并向其传递委托.

newList = list.FindAll(delegate(string s){return s == "match";});
Run Code Online (Sandbox Code Playgroud)

难道他们都不是在~O(N)中运行?这里最好的做法是什么?

此致,乔纳森

.net c# generics

30
推荐指数
4
解决办法
7万
查看次数

如果在覆盖Equals()时未能覆盖GetHashCode(),会出现什么问题?

可能重复:
为什么在重写Equals方法时重写GetHashCode很重要?

在C#中,如果在覆盖Equals()时未能覆盖GetHashCode(),那么具体可能出现什么问题?

.net c#

17
推荐指数
1
解决办法
2808
查看次数

塑料SCM与SVN

我目前正在为一个由10名开发人员组成的团队研究新的源代码控制选项.我们在Visual Studio 2008中进行.net开发.我们目前使用VSS进行源代码控制.

我们正在寻找一个集中的源代码控制解决方案(非分布式),带有一个很好的Visual Studio插件.我的经理推荐了Plastic SCM,我总是听到Subversion的好消息.我正在尝试决定是否应该采用Subversion或Plastic SCM.

关于Plastic SCM的信息不多(除了他们写的内容),我想知道它是否是一个很好的解决方案.它们听起来好像分支更简单.

另一方面,Subversion拥有一个强大,成熟的社区,并且已经过彻底的现场测试.

这些工具的优缺点是什么?

还有其他任何你可以建议的工具吗?

谢谢

svn version-control plasticscm visual-studio

12
推荐指数
2
解决办法
4539
查看次数

文件是图像吗?

在C#中,判断特定文件是否为图像的最佳方法是什么?

c# image

11
推荐指数
3
解决办法
6247
查看次数

d3使用exit删除数据

我准备了一个小小提琴来说明这里的问题

我在使用d3的退出函数从dom中删除元素时遇到问题.

假设我有一个包含10个元素的数组:

var data = [1 ,4, 5, 6, 24, 8, 12, 1, 1, 20]
Run Code Online (Sandbox Code Playgroud)

我使用这些数据使用d3创建一个简单的水平条形图

d3.selectAll('rect') 
.data(data) 
.enter() 
.attr("class", "rectangle")
.attr("stroke", "black")
.attr("stroke-width","1px")
.attr("fill","none")
.attr("x", 0)
.attr("y", function(d, i) { return 25 * i; } )
.attr("width", function(d) { return 22 * d; } )
.attr("height", "20");
Run Code Online (Sandbox Code Playgroud)

现在经过短暂的延迟后我想修剪我的数据集,所以我剩下的就是

var truncatedData = [4,5]

d3.selectAll('rect')
    .data(truncatedData )   
    .exit()
    .transition()
    .delay(3000)
    .remove();
Run Code Online (Sandbox Code Playgroud)

数据被成功删除,但它仍显示前两个元素1,4而不是4,5.

如何从dom中删除[4,5]以外的所有内容?

javascript d3.js

6
推荐指数
1
解决办法
1万
查看次数

背景工人事件处理

我一直在背景工作线程中处理事件处理.

我遇到的所有文档都让我相信,当DoWork事件处理程序抛出异常时,应该在RunWorkerCompleted处理程序中处理异常,并且该异常将在RunWorkerCompletedEventArgs的Error属性中可用.

这很好,但在调试期间,我总是看到用户代码消息未处理的异常.这让我相信我的方法存在问题.

我应该采取什么措施来解决这个问题?

此致,乔纳森

c# debugging multithreading backgroundworker

5
推荐指数
1
解决办法
963
查看次数