【发布时间】:2015-06-11 21:54:03
【问题描述】:
这让我很困惑。我的List<string> 对象的IndexOf(string) 方法以某种方式返回-1,即使该值在列表中很明显。
protected readonly List<string> validPrefixes = new List<string>() { "01", "02", "03", "FE", "E1", "E2", "E3" };
string prefix 是“01”
validPrefixes 索引 0 是“01”。
indexOf 是 -1。嗯……怎么样?
【问题讨论】:
-
出于好奇,如果你
validPrefixes.IndexOf("01")会发生什么? -
我们不处理诸如零和字母“O”之类的事情吗?
-
所以可以肯定地说
prefix!="01"...现在,请比较它们的长度... -
它可能没有任何区别,但只是为了笑我会在 addr 上做一个 getBytes 并将它们与“01”的字节进行比较
-
要寻找的另一件事是多线程问题。在处理这些行期间,相关变量之一是否可能发生变化? (例如,
addr..)这可能会让您认为值曾经等于当前值,但实际上并非如此。