爲什麼(i < UniqueWords.Count)表達式在for循環中有效,但返回「CS0019運算符'<'不能應用於'int'和'method group'類型的操作數」錯誤當放在我的if?它們都是先前聲明的字符串數組。「<」運算符錯誤
for (int i = 0;i<UniqueWords.Count;i++){
Occurrences[i] = Words.Where(x => x.Equals(UniqueWords[i])).Count();
Keywords[i] = UniqueWords[i];
if (i<UniqueURLs.Count) {rURLs[i] = UniqueURLs[i];}
}
編輯補充聲明:
List<string> Words = new List<string>();
List<string> URLs = new List<string>();
//元素的加入像這樣。 。 。 。
Words.Add (referringWords); //these are strings
URLs.Add (referringURL);
UniqueWords = Words.Distinct().ToList();
UniqueURLs = URLs.Distinct().ToList();
已解決。謝謝,方法需要括號.Count()我還不完全理解爲什麼它們並不總是必需的。
喬恩Skeet,謝謝,我想我不明白什麼聲明是什麼呢?你想要分配的實際值?他們從外部來源拉,但是是字符串。
我明白了!謝謝。 (至少是()。)
不,這仍然不顯示UniqueWords或UniqueURL的*聲明*。它顯示了值的分配位置,而不是聲明。 – 2009-07-16 20:42:39
你*應該*瞭解這裏發生了什麼真的很重要。請不要只是改變代碼,繼續前進 - 否則下一次你會感到困惑。 「Count」是IList/List /T []上的一個屬性,而「Count()」是在System.Linq.Enumerable中聲明的IEnumerable 的擴展方法。 –
2009-07-16 20:45:52