在Perl可以做一个列表如下C#分配列表的元素的变量
($a, $b, $c) = split(',', "aaa,bbb,ccc");
没有人知道是否有在C#中的等价不是做以下其他?
var elements = "aaa,bbb,ccc".Split(',');
var a = elements[0];
var b = elements[1];
var c = elements[2];
或者还有其他方法可以更简洁地完成上述操作吗?
在Perl可以做一个列表如下C#分配列表的元素的变量
($a, $b, $c) = split(',', "aaa,bbb,ccc");
没有人知道是否有在C#中的等价不是做以下其他?
var elements = "aaa,bbb,ccc".Split(',');
var a = elements[0];
var b = elements[1];
var c = elements[2];
或者还有其他方法可以更简洁地完成上述操作吗?
不,没有其他的方法可以在C#中做到这一点。 但有希望在.NET - 即F#:d 有了这个,你可以做
let [| a; b; c |] = "aaa,bbb,ccc".Split(',')
:不要介意这种代码将在F#中产生的警告 - 编译器只是* carefull *:P – Carsten 2012-03-07 16:15:49
没有在C#中的单个赋值表达式中分配多个变量的方法。你确实需要单独的变量而不是数组吗?
也许如果您给了我们更广泛的背景,我们可能会提出更好的方法来解决整体问题 - 通常如果您尝试以不同语言的方式处理任务,最终会以凌乱的代码,这可能就是这种情况。
'分而conquer'是像C#语言中最好的方面之一。 – Bastardo 2012-03-07 16:13:53
你在Perl中做什么是浪费。您正在执行完全不必要的“拆分”操作,只是为了消除两行简短的代码,从而在过程中混淆了您的代码。 – 2012-03-07 16:15:02
,这就是为什么Perl经常被描述为只写语言:) – Scroog1 2012-03-07 16:20:17