草庐IT

c# - 如何将 string[] 转换为 list<int>?

如何将字符串数组转换为int列表?(没有用我自己的方法一一转换)通过在google中搜索,我看到了名为ToList()和ConvetAll()的方法,但我无法输入它们,这是为什么?我试过的是:newlist((int[])s.Split(','));我收到无法将string[]转换为int[]的错误:( 最佳答案 这里涉及一个两步过程。首先是将字符串转换为整数,然后将数组转换为列表。如果可以使用LINQ,最简单的方法是使用:stringArray.Select(x=>Int32.Parse(x)).ToList();

c# - 如何获取 Int 数组中最常见的值? (C#)

如何使用C#获取Int数组中最常见的值例如:数组有以下值:1,1,1,2答案应该是1 最佳答案 varquery=(fromiteminarraygroupitembyitemintogorderbyg.Count()descendingselectnew{Item=g.Key,Count=g.Count()}).First();只为值(value)而不是计数,你可以这样做varquery=(fromiteminarraygroupitembyitemintogorderbyg.Count()descendingselectg.Ke

c# 对 List<KeyValuePair<int, string>> 进行排序

在C#中,我想对List>进行排序按列表中每个字符串的长度。在Psuedo-Java中,这将是匿名的,看起来像这样:Collections.Sort(someList,newComparator>({publicintcompare(KeyValuePairs1,KeyValuePairs2){return(s1.Value.Length>s2.Value.Length)?1:0;//specifymysortingcriteriahere}});如何获得上述功能? 最佳答案 C#中的等效项是使用lambda表达式和Sort方法:s

c# - 从 double 转换为 int 的最佳(最安全)方法

我很好奇将double转换为整数的最佳方法。运行时安全是我在这里的主要关注点(它不一定是最快的方法,但这是我的次要关注点)。我在下面留下了一些我可以想出的选项。任何人都可以权衡哪种是最佳实践吗?有没有我没有列出的更好的方法来完成这个?doublefoo=1;intbar;//Option1boolparsed=Int32.TryParse(foo.ToString(),outbar);if(parsed){//...}//Option2bar=Convert.ToInt32(foo);//Option3if(fooInt32.MinValue){bar=(Int32)foo;}

c# - 将 int 1、10、100 格式化为字符串 "001"、 "010"、 "100"的掩码

我如何将掩码应用于字符串以按以下方式格式化输出文本(最多2个前导零):inta=1,b=10,c=100;stringaF=LeadingZeroFormat(a),bF=LeadingZeroFormat(b),cF=LeadingZeroFormat(c);Console.Writeline("{0},{1},{2}",aF,bF,cF);//"001,010,100"什么是最优雅的解决方案?提前致谢。 最佳答案 您可以使用Int32.ToString("000")以这种方式格式化整数。有关详细信息,请参阅CustomNumer

c# - 背靠背 for 循环中的 int、short、byte 性能

(背景:WhyshouldIuseintinsteadofabyteorshortinC#)为了满足我自己对使用“适当大小”整数与“优化”整数的优缺点的好奇心,我编写了以下代码,这些代码强化了我之前对.Net中的int性能的看法(并对此进行了解释在上面的链接中)这是针对int性能而不是short或byte进行了优化。DateTimet;longa,b,c;t=DateTime.Now;for(intindex=0;index这在......方面给出了大致一致的结果~950000~2000000~1700000这符合我的预期。然而,当我尝试像这样为每种数据类型重复循环时......t=D

c# - 如何将 List<String> 转换为 Dictionary<int,String>

我有List,我需要将其转换为Dictionary自动生成key,有什么最短的方法可以实现吗?我试过:vardictionary=newDictionary();intindex=0;list.ForEach(x=>{definitions.Add(index,x);index++;});但我认为这是肮脏的方式。 最佳答案 vardict=list.Select((s,i)=>new{s,i}).ToDictionary(x=>x.i,x=>x.s); 关于c#-如何将List转换为Di

c# - 一种解析带有 'Flags' 的 .NET 枚举字符串或 int 值的方法

有一种使用以下方法计算枚举元素的好方法://memberTypeisenumtypeif(Enum.IsDefined(memberType,valueString)){returnEnum.Parse(memberType,valueString);}else{try{varunderlyingValue=Convert.ChangeType(valueString,Enum.GetUnderlyingType(memberType));if(Enum.IsDefined(memberType,underlyingValue)){returnunderlyingValue;}}cat

c# - 是否有用于 Where 和 Select 的 (T, int) 重载的 LINQ 语法?

查询varq=fromelemincollectionwheresomeCondition(elem)selectelem;翻译成varq=collection.Where(elem=>someCondition(elem));是否有可转换为以下内容的LINQ语法?varq=collection.Where((elem,index)=>someCondition(elem,index)); 最佳答案 不,没有LINQ语法。一个简单的解决方法是:varq=fromelemincollection.Select((x,i)=>new{x

c# - 为什么是 System.Drawing.Color.Green (0, 128,0)?

我认为它应该是(0,255,0)。有人知道为什么吗? 最佳答案 因为.NET框架使用W3CversionoftheX11colornames.显然有两种不同的“绿色”颜色,X11的是(0,255,0),W3C的是(0,128,0)。显然不知道为什么W3C(或任何人)采用这个特定的颜色列表作为标准,尽管我推测这是因为它是唯一真正广泛的“易于使用、人类可读”名称的列表一些RGB值(我个人无法想象颜色#6495ED是什么样子,直到我查找它)。W3C和X11列表之间存在差异(例如“灰色”和“紫色”在W3C和X11之间具有不同的RGB值)。此