只是我正在調查的好奇心。用LINQ/extensions方法重複字符串
問題:簡單地重複(相乘,有人會說)字符串/字符n次。
我知道這個目標有Enumerable.Repeat,但我試圖沒有它。 LINQ在這種情況下,似乎沒什麼用處,因爲在查詢像
from X in "s" select X
的串「S」正在探索等X是焦炭。因爲例如「s」,所以擴展方法也是如此。 集合(blablabla)將再次處理字符's',而不是字符串本身。爲了重複字符串,需要「外部」的東西,所以我認爲lambdas和代表,但它不能沒有聲明一個變量來分配委託/ lambda表達式。
因此,像定義一個函數,把它內聯:
((a)=>{return " "+a;})("a");
或
delegate(string a){return " "+a}(" ");
會給一個「沒有名字」的錯誤(等沒有遞歸,據我所知,即使通過傳遞可能的lambda /委託作爲參數),並且最終甚至不能由C#創建,因爲它的侷限性。
這可能是我從錯誤的角度看待這件事。有任何想法嗎?
這只是一個實驗,我不關心表演,關於記憶的使用...只是它是一條線和某種自主的。也許我們可以用Copy/CopyTo來做些什麼,或者把它轉換成其他的集合,我不知道。 反射也被接受。
差不多;我想避免enumerable.repeat – lunadir
您是否閱讀過該文章的答案?它使用字符串構造函數,而不是'Enumerable.Repeat'。 –
它重複一個字符,好的,但一個字符串 – lunadir