java - 从 List<Integer> 转换为数组 float[]

标签 java arraylist valueconverter

我有一个列表如下:

List<Integer> arrInt={2,3,5};

我想将此数组列表转换为数组 float 。

float[] result={2,3,5};

我的代码:

    public float[] convertIntToFloat(List<Integer> arr)
    {
      List<Float> arrResult=new ArrayList<Float>();

      for(int i=0;i<arr.size();i++)
      {
        float x=i;
        arrResult.add(x);
      }

      float result[]=arrResult.toArray( new float[arr.size()]);  //Error

      return result;
    }

但它在我的代码中显示错误,如上所述。 你能帮我吗?

最佳答案

List.toArray(T[]) 接受包装器类型的数组,而不是原始类型。

你应该这样做:

Float result[] = arrResult.toArray( new Float[arr.size()]);  

但是,这确实不是必需的。因为,现在您必须将其转换为原始类型数组。这也太过分了吧?

可以直接创建float[]数组,而不是通过 ArrayList<Float> 。只需更改您的 arrResults声明至:

float[] arrResults = new float[arr.size()];

在 for 循环中,使用以下方法将元素添加到数组中:

for(int i = 0; i < arr.size(); ++i) {
    arrResults[i] = arr[i];
}

关于java - 从 List<Integer> 转换为数组 float[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17906353/

相关文章:

java - 如何使用java将YYYYMMDD转换为YYYY-MM DD格式

wpf - 无法在 WPF 中找到静态引用的枚举类型

java - java中处理多个异常

java - 为什么我尝试在 Spring Boot 应用程序中使用准备好的语句执行 JdbcTemplate 查询时会出现此错误?

java - 在我的循环中哪里创建 ArrayList?

java - 在二维数组中添加对象大小未知的JAVA列表

java - 在 Tomcat 7 中部署 Spring MVC + Maven

java - 在 Hibernate 中,两个实体如何与第三个实体具有多对多的单向关系?

java - 如何进一步优化代码?

.net 4.5 中可绑定(bind)的 WPF Richtextbox