请让我困惑。我有一个大小为184的Arraylist。在我的列表是25ArrayList.IndexOf在c中返回-1#
[1] = 25
[2] = 30等
我试图返回一个项目例子的索引。返回0,其中项目是25返回1其中30.但是,我曾经使用过什么项目。当我使用
int l = myArray.IndexOf(myItem) ;
它返回-1。我的项目是30.然后用30替换myitem
int l = myArray.IndexOf(30) ;
int l = myArray.IndexOf("30") ;
两者都返回-1。然而,当我尝试
int l = Convert.ToInt16(myArray[2]);
上面的返回30.请问我哪里错了?这是我第一次遇到这个。我很困惑。我试过了。
int l = myArray.IndexOf("30", 1) ;
int l = myArray.IndexOf(30 ,1) ;
然而没有什么帮助。
更新
谢谢大家的时间。
我不得不使用下面的用户建议的列表。再次感谢你。如果你写你的答案,我会接受它,也许它可以帮助一些人。我修改我的代码如下。它现在工作,但我不知道为什么ListArray失败。
List<long> li = new List<long>();
foreach (long item in arlClientID)
li.Add(item);
int h = li.IndexOf(searchDuplicate.clientid);
我建议你不要使用ArrayList。改为使用'List'。 –
Blorgbeard
2014-10-29 04:09:40
什么是myItem和int? – ChiefTwoPencils 2014-10-29 04:11:19
你如何将项目添加到列表中? – Blorgbeard 2014-10-29 04:11:27