【问题标题】:What does line.split(",")[1] mean [Java]?line.split(",")[1] 是什么意思 [Java]?
【发布时间】:2016-04-04 13:25:47
【问题描述】:

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

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

【问题讨论】:

标签: java string double value-of


【解决方案1】:

表示您的line 是一串用逗号分隔的数字。
例如:"12.34,45.0,67.1"

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

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

【讨论】:

    【解决方案2】:

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

    crtValuebdouble 值。

    【讨论】:

      【解决方案3】:

      Javapublic String[] split(String regex)

      围绕给定正则表达式的匹配拆分此字符串。

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

      所以[1] 获得了在String[] 中找到的数组的第二项。

      【讨论】:

        【解决方案4】:

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


        1. String numbers = "1.21,2.13,3.56,4.0,5";
        2. String[] array = numbers.split(",");用逗号分割输入行
        3. String second = array[1]; 从数组中获取第二个元素。 Java 数组编号从0 索引开始。
        4. double crtValue = Double.valueOf(second);String 转换为 double

        不要忘记如果字符串不包含可解析的double,可能会抛出NumberFormatException

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-12-28
          • 1970-01-01
          • 2016-11-18
          • 2019-11-19
          • 2016-09-20
          相关资源
          最近更新 更多