当前位置: 代码迷 >> ASP.NET >> 求救!如何两次都输出1啊没有道理啊
  详细解决方案

求救!如何两次都输出1啊没有道理啊

热度:3871   发布时间:2013-02-25 00:00:00.0
求救!怎么两次都输出1啊,没有道理啊!
怎么两次都输出1啊,没有道理啊,如下:
ArrayList   arr   =   new   ArrayList();
                arr.Add( "中国 ");
                arr.Add( "美国 ");
                arr.Add( "日本 ");
                arr.Add( "英国 ");

                Response.Write(arr.IndexOf( "美国 "));//输出1
                Response.Write( " <hr> ");
                Response.Write(arr.LastIndexOf( "美国 "));   //输出1

------解决方案--------------------------------------------------------
顺数,倒数美国都是排在第2位啊,当然输出1了。
如果是
arr.Add( "中国 ");
arr.Add( "美国 ");
arr.Add( "日本 ");
arr.Add( "英国 ");
arr.Add( "美国 ");
Response.Write(arr.LastIndexOf( "美国 "));就会输出4了。
------解决方案--------------------------------------------------------
你的arr 里只有一个“美国”,两次输出不一致那才是没道理

这样才会不一样

ArrayList arr = new ArrayList();
arr.Add( "中国 ");
arr.Add( "美国 ");
arr.Add( "日本 ");
arr.Add( "美国 ");

Response.Write(arr.IndexOf( "美国 "));//输出1
Response.Write( " <hr> ");
Response.Write(arr.LastIndexOf( "美国 ")); //输出3

------解决方案--------------------------------------------------------
为什么不该是1?你数组里不就一个美国吗?indexOf和lastIndexOf都应该是1没错啊
  相关解决方案