带有2个动作的单行if语句
我想做一行if语句有多个动作。
默认是这样的:
(if) ? then : else userType = (user.Type == 0) ? "Admin" : "User";
但我不需要“别的”,我需要一个“别的如果”
像多行中那样:
if (user.Type == 0) userType = "Admin" else if (user.Type == 1) userType = "User" else if (user.Type == 2) userType = "Employee"
单线有可能吗?
听起来你真的想要一个Dictionary
或者可能是一个switch
语句……
您可以使用条件运算符执行此操作:
userType = user.Type == 0 ? "Admin" : user.Type == 1 ? "User" : user.Type == 2 ? "Employee" : "The default you didn't specify";
虽然你可以把它放在一行,但我强烈建议你不要这样做。
我通常只会针对不同的条件执行此操作 – 不仅仅是几个不同的可能值,这在地图中处理得更好。
userType = (user.Type == 0) ? "Admin" : (user.type == 1) ? "User" : "Admin";
应该做的伎俩。
你可以用单行写出来,但这不是某人能够阅读的东西。 保持它就像你已经写过它,它本身就已经很美了。
如果你有太多的if/else
结构,你可以考虑使用不同的数据结构,比如Dictionaries
(查找键)或Collection
(运行条件LINQ
查询)
上述就是C#学习教程:带有2个动作的单行if语句分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/953479.html