【问题标题】:How to convert a String to a float array?如何将字符串转换为浮点数组?
【发布时间】:2019-09-22 13:33:51
【问题描述】:

我有一个这样的String

String volt = “[1.2, 3.1, 5.3]”;

如何将String 转换为float 数组?

【问题讨论】:

  • 我不明白你在问什么 - 你没有向我们展示一个实际的字符串。
  • String volt = "[1.99, 1.98, 1.98, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.98, 1.92 ]"
  • 您能否添加一些关于您在 Java 中转换此字符串时实际尝试过的操作的信息?另外,我建议根据其他 cmets 更新问题,以便更清楚您在问什么。即 string volt = "...." 应该是原始问题的一部分。您可以编辑您的问题,使其更新并具有相关性。

标签: java arrays string type-conversion


【解决方案1】:

假设 volt 是一个逗号分隔的字符串。

  String volt = "1.2,3.1,5.3";

  String[] voltsToStrArray = volt.split(",");

  ArrayList<Float> voltsToFloatArray = new ArrayList<>();

  for(String strValue : voltsToStrArray) {
      voltsToFloatArray.add(Float.valueOf(strValue));
  }

【讨论】:

    【解决方案2】:

    在 Java 1.8 中使用 Stream api:

    //After removing squire bracket
    String volt = "1.2, 3.1, 5.3, 4.5";
    List<Float> list = Pattern.compile(", ")
                       .splitAsStream(volt)
                       .map (elem -> Float.parseFloat(elem))
                       .collect(Collectors.toList());
    

    【讨论】:

      【解决方案3】:

      首先你将字符串拆分成一个数组:

      String str = "1.2, 3.1, 5.3, 4.5"; 
      String[] arrOfStr = str.split(","); 
      

      然后你遍历数组并转换为浮点数:

      import java.util.ArrayList;
      ArrayList <Double> volts = new ArrayList<Double>();
      for (int i = 0; i < arrOfStr.length; i++) { 
          volts.add(Double.parseDouble(arrOfStr[i]));
      }
      System.out.println(volts);
      

      【讨论】:

      • 同理,拆分应用关闭。
      • @LuisaGonzález 你的字符串是什么样的?
      • 但它来自一个 sqlite 数据库: String volt = cursor.getString(1); "[1.99, 1.98, 1.98, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.98, 1.92 ]"
      • @LuisaGonzález 好的试试这个: String[] arrOfStr = volt.substring(1, volt.length() -1).split(",");而不是: String[] arrOfStr = str.split(",");但是,如果 split 给您带来麻烦,则可能是您实际上并未处理字符串,请在尝试调用 split() 之前将其转换为字符串
      猜你喜欢
      • 2011-11-25
      • 1970-01-01
      • 1970-01-01
      • 2018-02-15
      • 2011-12-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多