为了账号安全,请及时绑定邮箱和手机立即绑定

为什么下标越界?

为什么下标越界?

慕粉123123123 2016-10-13 14:54:55
public class sss {public static void main(String args[]){               String s1=args[1];    String s2=args[2];             String s3=args[3];    String s4=args[4];             System.out.println(“args[2]=”+s2);}}
查看完整描述

4 回答

已采纳
?
黑鹦鹉

TA贡献11条经验 获得超33个赞

args是系统调用main方法时传进来的参数。如果传了5个参数进来,你用args[4]是没关系的,但是如果没传这么多就会报数组越界的异常。如果还有不懂,请追问。打字辛苦,望您采纳

查看完整回答
4 反对 回复 2016-10-13
?
壁虎漫步1

TA贡献11条经验 获得超3个赞

你把完整的代码发上来看看。 你这不完整。都没初始化什么的。。。。

查看完整回答
1 反对 回复 2016-10-13
?
慕UI1230053

TA贡献2条经验 获得超0个赞

数组下标是从0开始的,估计你的数组总共有4条记录在里面,而你args[4]取第四条的时候实际上在取第五个元素,所以下表越界了,正确的取第四个元素应该是args[3]

查看完整回答
反对 回复 2016-10-13
?
ziom

TA贡献948条经验 获得超1109个赞

先判断args是否为null,不为null再判断一下它的长度

查看完整回答
反对 回复 2016-10-13
  • 4 回答
  • 0 关注
  • 1576 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信