社区
C#
帖子详情
为什么会有异常??
程序小海
2009-07-28 08:59:43
int[] arry=new int [10]{12,23,4,5,12,87,98,90,34,12};
int d = Array.IndexOf(arry ,12,2,9);
Console.WriteLine(d);
...全文
139
11
打赏
收藏
为什么会有异常??
int[] arry=new int [10]{12,23,4,5,12,87,98,90,34,12}; int d = Array.IndexOf(arry ,12,2,9); Console.WriteLine(d);
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
AustinLuo
2009-07-29
打赏
举报
回复
楼主太不小心了。。
mbh0210
2009-07-29
打赏
举报
回复
Array.IndexOf(arry ,object , startIndex , Count)
startIndex 开始索引,Count指的是从startIndex开始多少个
dancingbit
2009-07-29
打赏
举报
回复
因为下标是从0开始,那么第2到第9的表示就是下标1开始,共计8个数。
代码中就应该是这样:
int d = Array.IndexOf(arry ,12,1,8);
不过,从第2开始,到数组结束,有9个数组元素,长度可以为9了。
hztltgg
2009-07-29
打赏
举报
回复
int d = Array.IndexOf(arry ,12,2,9);
意思是索引2开始(就是0开始计数)的后9个
你要第二个数字到第九个数
int d = Array.IndexOf(arry ,12,开始-1,结束-开始+1);
即
int d = Array.IndexOf(arry ,12,2-1,9-2+1);
程序小海
2009-07-29
打赏
举报
回复
[Quote=引用 5 楼 dancingbit 的回复:]
下标是从0起始的,你定义的数组最大合法下标就是9了,而从2开始的第9个,下标已经是10了。
[/Quote]
那我想 确定12这个数 在第2个数和第9个数之间的位置 该如何编辑呢??
江南小鱼
2009-07-29
打赏
举报
回复
Array.IndexOf(Array,Object,StartIndex,count);
参数:
Array,要搜索的数组
Object,要搜索的元素
StartIndex,从指定索引处开始搜索
count,从指定索引开始,搜索范围是“包括指定索引值StartIndex在内的count个数组元素”
所以你程序中IndexOf方法最大值是8
dancingbit
2009-07-28
打赏
举报
回复
下标是从0起始的,你定义的数组最大合法下标就是9了,而从2开始的第9个,下标已经是10了。
程序小海
2009-07-28
打赏
举报
回复
不是说是 2 到 9之间的吗?、?
tylichao008
2009-07-28
打赏
举报
回复
下标越界
dancingbit
2009-07-28
打赏
举报
回复
出了合法下标的范围了。
hztltgg
2009-07-28
打赏
举报
回复
IndexOf(arry ,12,2,9);
2+9=11 超过 int [10]的10了
C#
111,132
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章