java编程,这是什么意思? new char[] { '0', '1', '2', '3', '

java编程,这是什么意思?newchar[]{'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E'}[... java编程,这是什么意思? new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E' }[15] = 70;     a = new byte[] { -128 }; 谢谢了 展开
 我来答
hdparrot
2014-04-24 · TA获得超过2404个赞
知道小有建树答主
回答量:1385
采纳率:0%
帮助的人:1149万
展开全部
new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E' }[15] = 70;
这句话实际上是两种合在一起了,和下面两句意思一样:
char[] array = new char[]{ '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E' };
array[15] = 70;
就是让字符数组的下标为15的元素的ASCII码为70。但是下标15实际上越界了,会出错的。
不过这种写法在真正写程序的时候不会出现,创建的对象没有引用,而且什么也没有做,没有意义。
更多追问追答
追问
可是这是javaQQ1.0源码中的一部分,这是什么情况?
追答
你运行过试试吗?不知道是哪里提供的,这句话肯定会出错的。
百度网友e97013e
2014-04-24 · 超过18用户采纳过TA的回答
知道答主
回答量:60
采纳率:0%
帮助的人:41.7万
展开全部
第一个是给一个匿名数组第16个元素赋值,不过由于这个数组长度为15,所以会报数组下标越界的错误,而第二条给a进行初始化为一个长度为1的byte数组并初始化。
PS:如果你是从书上看到的,建议不要再看这本书了,严重的理论派!!
追问
为什么是严重的理论派呢,他这是什么理论?
而且源代码没有处理异常!
追答
首先这种写法在实际工作中完全用不到,其次是写的就是一个错误代码,而且第二条语句如果前面已经定义了byte[] a就算了,如果连定义都没有,直接就这样用,我都不知道这本资料还到底会有多少错误存在。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangzhi291
2014-04-24 · 超过64用户采纳过TA的回答
知道小有建树答主
回答量:124
采纳率:100%
帮助的人:86.3万
展开全部
new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E' }[15] = 70;
new char[]的15号下标赋值为70,70对应的阿斯卡玛值是F
和下面的意思差不多,不过少创建了一个变量名
char[] x = new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E' };
x[15] =70;
更多追问追答
追问
new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E' ,'F'}

那不就是上面这个吗?
为什么不直接这样呢?
追答
那样写没有实际用途,你根本没法拿到那个对象,你无法使用,只能作为研究,运行起来也不会出错。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
嘿小子不要跑
2014-04-24 · TA获得超过128个赞
知道小有建树答主
回答量:271
采纳率:0%
帮助的人:70.3万
展开全部
代码有问题,char[]里没有下标为15的值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式