我真的不明白這個T的東西呢。我需要將以下結果轉換爲列表如何將IEnumerable <IEnumerable <T>>轉換爲列表<string>?
private void generateKeywords_Click(object sender, RoutedEventArgs e)
{
string srText = new TextRange(
txthtmlsource.Document.ContentStart,
txthtmlsource.Document.ContentEnd).Text;
List<string> lstShuffle = srText.Split(' ')
.Select(p => p.ToString().Trim().Replace("\r\n", ""))
.ToList<string>();
lstShuffle = GetPermutations(lstShuffle)
.Select(pr => pr.ToString())
.ToList();
}
public static IEnumerable<IEnumerable<T>> GetPermutations<T>(
IEnumerable<T> items)
{
if (items.Count() > 1)
{
return items
.SelectMany(
item => GetPermutations(items.Where(i => !i.Equals(item))),
(item, permutation) => new[] { item }.Concat(permutation));
}
else
{
return new[] { items };
}
}
這條線以下失敗,因爲我無法正確轉換。我的意思是不是錯誤,但不是字符串列表或者
lstShuffle = GetPermutations(lstShuffle).Select(pr => pr.ToString()).ToList();
沒有侮辱意,但你理解你的代碼做了什麼? – gunr2171
我不明白GetPermutations部分,因爲我沒有編碼。這就是爲什麼我問:D @ gunr2171 – MonsterMMORPG