Tag: 条件语句

C#inline条件在string 数组中

你怎么能在C#中对string []数组执行以下内联条件。 根据参数,我想包括一组字符串……或不包括。 这个问题是关于stackoverflow的这个问题的后续问题。 //Does not compile bool msettingvalue=false; string[] settings; if(msettingvalue) settings = new string[]{ “setting1″,”1”, “setting2″,”apple”, ((msettingvalue==true) ? “msetting”,”true” :)}; 如果msettingvalue为true,我想要包含两个字符串“msetting”,“true”:否则没有字符串。 Edit1它不一定是一个键值对…如果它是5个字符串是(或不是)添加…我不认为它是那么棘手。 (也……有足够代表的人可以制作“内联条件”或“条件内联”标签吗?)

通用列表,使用条件语句计数的项目

我有一个通用列表。 它有一个ListfilesToProcess.Count属性,它返回项目的总数,但我想用条件语句计算列表中的某些项目数。 我是这样做的: int c = 0; foreach (FilesToProcessDataModels item in ListfilesToProcess) { if (item.IsChecked == true) c++; } 是否有任何更短的方式,如int c = ListfilesToProcess.count(item => item.IsChecked == true);

是否可以在匿名类型中有一个条件字段

我有一些看起来像这样的代码,并从现有的集合创建一个列表 var items = items.ConvertAll(r => new { description = FormatDescription(r), start = r.Milestone.HasValue ? r.Milestone.Value.ToString(“yyyy-MM-ddTHH:mm:ssZ”) : DateTime.Today.ToString(“yyyy-MM-ddTHH:mm:ssZ”), classname = “significance” + r.SignificanceLevel, 正如你所看到的,现在如果我没有开始日期(r.Milestone)那么我就把它放在今天的日期。 我真的想做的如果说: 如果我有一个r.Milestone.Hasvalue显示该日期,如果我没有值,则根本不具有匿名类型的START DATE字段。 是否可以使用此条件逻辑,您可以在此类代码中一起删除字段?

案例标签的顺序对switch语句的效率有多大影响?

考虑: if (condition1) { // Code block 1 } else { // Code block 2 } 如果我知道在大多数condition1将是true ,那么我应该将逻辑编写为编写,而不是: if (!condition1) { // Code block 2 } else { // Code block 1 } 因为我将避免jump到第二个代码块的惩罚(注意:我对汇编语言的了解有限)。 这个想法是否继续switch语句和case标签? switch (myCaseValue) { case Case1: // Code block 1 break; case Case2: // Code block 2 break; // etc. } […]

使用Action词典而不是switch语句

我只是在查看我的一些旧代码(有一些空闲时间),我注意到一个相当冗长的switch语句。 由于获得了新知识,我已经以下面的forms重构了它: private Dictionary createView { get { return new Dictionary() { {“Standard”, CreateStudySummaryView}, {“By Group”, CreateStudySummaryByGroupView}, {“By Group/Time”, CreateViewGroupByHour} }; } } 你会考虑这个好习惯吗,还是仅仅是一个超级丰富和不必要的案例? 我渴望确保我学到的新技术,仅仅为了它而不是聪明,并且它们实际上为代码增加了好处。 谢谢。