line.split(",")[1]是什么意思[Java]?

时间:2016-04-04 13:25:47

标签: java string double value-of

我遇到了Double.valueOf(line.split(",")[1])遇到的代码 我熟悉Double.valueOf(),我的问题是要理解句子中[1]的含义。搜索过的文档没有找到任何内容。

while ((line = reader.readLine()) != null)
                double crtValue = Double.valueOf(line.split(",")[1]);

4 个答案:

答案 0 :(得分:10)

这意味着您的line是由逗号分隔的数字字符串 例如:"12.34,45.0,67.1"

line.split(",")返回一个字符串数组 例如:{"12.34","45.0","67.1"}

line.split(",")[1]返回 2nd (因为索引从0开始)数组项。
例如:45.0

答案 1 :(得分:3)

这意味着line是一个以a,b开头的字符串,其中b实际上是一个数字。

crtValuedouble的{​​{1}}值。

答案 2 :(得分:3)

Java public String[] split(String regex)

  

将此字符串拆分为给定正则表达式的匹配项。

  

返回: 字符串的数组,通过将此字符串拆分为给定正则表达式的匹配项来计算

因此[1]获取String[]中找到的数组的第二项。

答案 3 :(得分:2)

您的代码尝试从double获取第二个reader.readLine()值。

  1. String numbers = "1.21,2.13,3.56,4.0,5";
  2. String[] array = numbers.split(",");通过commma分割输入行
  3. String second = array[1];从数组中获取第二个元素。 Java数组编号从0索引开始。
  4. double crtValue = Double.valueOf(second);String转换为double
  5. 如果字符串不包含可解析的NumberFormatException,请不要忘记可能引发的double