[英]List<string> object IndexOf returning -1. How?
這對我來說非常困惑。 不知何故,我的List<string>
對象的IndexOf(string)
方法返回-1,即使List中的值為CLEARLY。
protected readonly List<string> validPrefixes = new List<string>() { "01", "02", "03", "FE", "E1", "E2", "E3" };
string prefix
是“01”
validPrefixes
索引0為“01”。
indexOf
是-1。 嗯......怎么樣?
好吧,我不知道為什么,但看起來我的調試器對我說謊。 我相信發生的事情是有效validPrefixes
所需的全部小寫的值,因為我之前在我的代碼中使用ToLower()
方法影響了string addr
變量。
出於某種原因,我的調試器似乎在某種程度上混合了循環的迭代。 我只能通過使用string.ToCharArray()
方法將變量賦值給char[]
來告訴這種情況。
("01").ToCharArray()
返回['0','1']
。 prefix.ToCharArra()
返回['f','e']
。
不知何故,調試器告訴我prefix
的值是"01"
而prefix.ToCharArray()
的值是['f','e']
。 后者是來自不同循環迭代的值應該是什么。
由於我正在檢查"FE"
而不是"fe"
,我的代碼無效,但我的調試器並沒有告訴我這一點。
我使用Xamarin iOS Build Host在我的Windows PC上使用Xamarin為iOS開發。 我過去曾經發生過一些奇怪的事情,特別是在調試和斷點方面。 所以我要責怪Xamarin Build Host。
感謝@Amit和@DavidW幫助我得出這個結論。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.