Während das, was Sie Werke haben, die einfachste Art und Weise wäre der Index des Arrays zu verwenden und das zweite Element verweisen (bei Index 1, da der Index für das erste Element bei Null beginnt): pkgratio[1]
Console.WriteLine(pkgratio[1]);
Ein vollständigeres Beispiel:
string[] pkgratio = "1:2:6".Split(':');
for (int i = 0; i < pkgratio.Length; i++)
Console.WriteLine(pkgratio[i]);
Mit einem IEnumerable<T>
, was Sie funktioniert haben, oder Sie können direkt das Element erhalten mit die ElementAt
method:
// same idea, zero index applies here too
var elem = result.ElementAt(1);
Hier ist Ihre Probe als IEnumerable<string>
. Beachten Sie, dass der Aufruf AsEnumerable()
die Stichprobe gegen eine IEnumerable<string>
hervorheben soll. Sie können ElementAt
gegen das string[]
Array Ergebnis von Split
tatsächlich verwenden, aber es ist effizienter, den Indexer zu verwenden, der zuvor gezeigt wird.
var pkgratio = "1:2:6".Split(':').AsEnumerable();
Console.WriteLine(pkgratio.ElementAt(1));
im Zusammenhang mit meiner allerersten Frage: http://StackOverflow.com/Questions/1735146/Ways-To-get-the-Middle-of-Alist-in-Haskell –
Mit 'First()' impliziert Sie sind zuversichtlich, dass ein Gegenstand tatsächlich an der Position ist, auf die Sie zugreifen möchten. Wenn Zweifel bestehen, können Sie 'FirstOrDefault()' verwenden. –
Sie brauchen nicht die Take (1) –