在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