索引超出界限问题 求高手!!!!

街角嘚堕落 2011-05-20 09:45:22
string s=tb.NTel;
string sb = s.Substring(0, s.Length - 1);
string[] arr = sb.Split('—');
if (arr[0] != null)
{
this.txtQh.Text = arr[0];
}
if (arr[1] != null)
{
this.txtPhone.Text = arr[1];
}
if (arr[2] != null)
{
this.txtFenji.Text = arr[2];
}

这是抱错的地方 arr[1]超出数组界限
...全文
86 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
gudujianxiao 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 meceky 的回复:]
引用 2 楼 ojlovecd 的回复:

sb中不包含字符“-”

代码写的不严谨!
[/Quote]
正解
那要是数组长度有n个,岂不是很郁闷
  • 打赏
  • 举报
回复
你的字符串中不包含"-" 分割的时候数组就一个值 索引也就到0,你用arr[1]的时候当然就超出索引范围了。
要判断的话用7搂的方法吧。
小童 2011-05-20
  • 打赏
  • 举报
回复
if (arr.length>0)
{
this.txtQh.Text = arr[0];
}
if (arr.length>1)
{
this.txtPhone.Text = arr[1];
}
if (arr.length>2)
{
this.txtFenji.Text = arr[2];
}
meceky 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ojlovecd 的回复:]

sb中不包含字符“-”
[/Quote]
代码写的不严谨!
xiangchengboy 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ojlovecd 的回复:]

sb中不包含字符“-”
[/Quote]正解
zhangyong361055720 2011-05-20
  • 打赏
  • 举报
回复
因为你的数组就一个值,所以超出界限喽,断点调试下,看看,就知道什么原因了
  • 打赏
  • 举报
回复
这代码,潜在的bug多
我姓区不姓区 2011-05-20
  • 打赏
  • 举报
回复
sb中不包含字符“-”
C5662601 2011-05-20
  • 打赏
  • 举报
回复
断点跟踪

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧