草庐IT

Set集合

全部标签

c# - 如何找到集合的所有分区

我有一组不同的值(value)观。我正在寻找一种方法来生成该集合的所有分区,即将集合划分为子集的所有可能方法。例如,集合{1,2,3}有以下分区:{{1},{2},{3}},{{1,2},{3}},{{1,3},{2}},{{1},{2,3}},{{1,2,3}}.由于这些是数学意义上的集合,因此顺序无关紧要。例如,{1,2},{3}与{3},{2,1}相同,不应是单独的结果。集分区的完整定义可以在Wikipedia上找到. 最佳答案 我找到了一个简单的递归解决方案。首先,让我们解决一个更简单的问题:如何找到恰好由两部分组成的所有分

c# - 为什么返回集合接口(interface)而不是具体类型?

这个问题在这里已经有了答案:ListorIList[closed](18个答案)关闭8年前。我在其他人的代码中注意到,返回通用集合的方法几乎总是返回一个接口(interface)(例如IEnumerable或IList)而不是具体的实现。我有两个相关的问题。首先,为什么(如果有的话)返回接口(interface)更好?其次,是否有包含Sort方法的集合接口(interface)(如List那样)?

c# - 如何在设计时避免 XAML 代码中出现 "object reference not set to an instance of an object"异常?

我自己设计的wpf用户控件有问题。问题是,当我在我的程序中实现用户控件时,在设计时XAML代码中出现objectreferencenotsettoaninstanceofanobject异常。设计师向我展示了以下信息:atMicrosoft.Expression.Platform.InstanceBuilders.InstanceBuilderOperations.InstantiateType(Typetype,BooleansupportInternal)atMicrosoft.Expression.Platform.InstanceBuilders.ClrObjectInstan

c# - 将 Datagrid.SelectedItems 集合转换到 List<T>

我有这样的课publicclassFoo{publicstringprop1{get;set;}publicstringprop2{get;set;}}还有一个带有List的View模型,此列表用作Bind一个DataGrid,然后在代码隐藏中我需要获取Datagrid.SelectedItems收集并将其转换为List我尝试过的事情:ListSelectedItemsList=(List)DataGrid.SelectedItems;//ORobjectp=DataGrid.SelectedItems;ListSelectedItemsList=((IList)p).Cast().T

c# - c#中的最大容量集合

在.NetBCL中有一个类似于列表的集合数据结构,它具有最大容量,比如配置为100个项目,当添加项目101时,原始的第一个项目从集合中弹出/删除,从而确保项目计数永远不会超过100。我正在使用.net3.5提前致谢 最佳答案 没有这样的集合可用,但编写起来相当容易。执行此操作的最佳方法是创建一个封装现有集合类型的新集合类型。例如publicclassFixedSizeList:IList{privateList_list=newList();privateint_capacity=100;publicvoidAdd(Tvalue){

c# - 使用 LINQ 查询获取索引值的集合

有更好的方法吗?string[]s={"zero","one","two","three","four","five"};varx=s.Select((a,i)=>new{Value=a,Index=i}).Where(b=>b.Value.StartsWith("t")).Select(c=>c.Index);即我正在寻找一种更有效或更优雅的方式来获取符合条件的项目的位置。 最佳答案 您可以轻松添加自己的扩展方法:publicstaticIEnumerableIndexesWhere(thisIEnumerablesource,F

c# - 为从 List<string> 继承的集合实现 GetEnumerator()

我正在尝试实现FilePathCollection。它的项目将是简单的文件名(没有路径-例如“image.jpg”)。通过foreach循环使用集合后,它应该返回通过与baseDirectory连接创建的完整路径。我怎样才能做到这一点?publicclassFilePathCollection:List{stringbaseDirectory;publicFilePathCollection(stringbaseDirectory){this.baseDirectory=baseDirectory;}newpublicSystem.Collections.IEnumeratorGetE

c# - 对一个集合进行分组并返回一个字典

我编写了一个方法,该方法采用项目集合(价格项目-每个项目都有一个数量和一个代码)并按代码对它们进行分组,然后返回一个IDictionary,其中键是项目的代码,值是具有该代码的项目组(希望有意义!)下面是方法的实现:publicIDictionary>GetGroupedPriceDetails(IEnumerablepriceDetails){//createadictionarytoreturnvargroupedPriceDetails=newDictionary>();//groupthepricedetailsbycodevargrouping=priceDetails.Gr

c# - 如何为数组数据成员定义 get 和 set?

我正在创建一个类Customer,它具有以下数据成员和属性:privatestringcustomerName;privatedouble[]totalPurchasesLastThreeDays;//arrayof3elementsthatwillholdthetotalsofhowmuchthecustomerpurchasedforthepastthreedaysi.e.element[0]=100,element[1]=50,element[2]=250publicstringCustomerName{get{returncustomerName;}set{customerNa

c# - System.StackOverflowException ,何时使用 get set 属性?

在wcfserviceLibrary.DLL中发生类型为“System.StackOverflowException”的未处理异常代码如下。[DataContract]publicclassmemberdesignations{[DataMember]publicstringDesigId{get{returnDesigId;}set{DesigId=value;}}[DataMember]publicstringDesignationName{get{returnDesignationName;}set{DesignationName=value;}}}然后我有如下的Typememb