Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将字符串转换为浮点数组?_Java_Arrays_String_Type Conversion - Fatal编程技术网

Java 如何将字符串转换为浮点数组?

Java 如何将字符串转换为浮点数组?,java,arrays,string,type-conversion,Java,Arrays,String,Type Conversion,我有一个字符串,如下所示: String volt = “[1.2, 3.1, 5.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

我有一个
字符串
,如下所示:

String volt = “[1.2, 3.1, 5.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);
import java.util.ArrayList;
ArrayList volts=新的ArrayList();
对于(int i=0;i
在Java 1.8中使用流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());
//卸下乡绅支架后
字符串volt=“1.2、3.1、5.3、4.5”;
List=Pattern.compile(“,”)
.分流(伏特)
.map(elem->Float.parseFloat(elem))
.collect(Collectors.toList());

假设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));
  }
String volt=“1.2,3.1,5.3”;
字符串[]voltsToStrArray=volt.split(“,”);
ArrayList voltsToFloatArray=新的ArrayList();
for(字符串标准值:voltsToStrArray){
voltsToFloatArray.add(Float.valueOf(strValue));
}

我不明白你在问什么-你没有给我们看一个实际的字符串。string volt=“[1.99,1.98,1.98,1.97,1.97,1.97,1.97,1.97,1.97,1.97,1.98,1.92]”你能添加一些关于你在Java中转换这个字符串的实际操作的信息吗?此外,我建议根据其他评论更新问题,以便更清楚地了解您的问题。i、 e.字符串volt=“…”应为原始问题的一部分。您可以编辑您的问题,使其更新并与之相关。同样,使用split,应用程序将关闭。@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.97,1.98,1.92]”@LuisaGonzález Ok试试这个:String[]arrOfStr=volt.substring(1,volt.length()-1)。拆分(“,”;而不是:字符串[]arrOfStr=str.split(“,”);但如果split给您带来了麻烦,可能是因为您实际上并没有处理字符串,请在尝试调用split()之前将其转换为字符串