声明末尾的[1]
是什么意思?
String magnitudeString = details.split(" ")[1];
不能这样写:
String [] magnitudeString = details.split(" ");
答案 0 :(得分:11)
[1]
正在为数组编制索引:String.split()
的结果是一个数组,[1]
从该结果中获取第二个元素。
这相当于:
String strs[] = details.split(" ");
String magnitudeString = strs[1];
所以它不能像你的建议那样重写。
显然,如果split
的结果少于2个元素,则其中任何一个都是问题,因此在访问数组元素之前进行length
检查是谨慎的,并且立即表单不允许这样做。
答案 1 :(得分:2)
它只是意味着split()
方法将返回一个数组,并且您将该数组的第二个索引处的内容分配给String magnitudeString
(请记住索引从0开始)在Java)。
答案 2 :(得分:0)
它是details.split(" ")
返回的String []数组的索引。
一个建议使用
String [] magnitudeString = details.split(" ");
并迭代。
使用
String magnitudeString = details.split(“”)[1]
可能会导致array index out of bound