說的長度我有一個字符串var s = "123456789"
把一個字符串轉換成集合串3
其中
foreach(var c in DivideStr(s, 3)){
Console.WriteLine(c);
}
會打印出123
,456
,789
這是一個相當簡單的問題用循環和if語句完成。但我想用Take
和Skip
函數來完成在C#中的跟隨時尚
IEnumerable DivideStr(String s, Int n)
{
var a = s;
while(!a.IsEmpty())
{
yield return a.Take(n)
a = a.Drop(3) // or a.Skip(n)
}
}
這樣,如果我有var s = "12345678"
打印出來會123
,456
和78
問題是上面的代碼不會編譯。我錯過了什麼?
什麼問題你有特別?我有各種各樣的想法,但我懷疑他們中的任何一個都與你的問題有關。 –
您期望打印什麼?使用Substring的 –