首页 > 解决方案 > 根据方法输入动态创建一定数量的数组列表。(JAVA)

问题描述

我的代码采用 wav 文件并根据其结构生成各种双精度值。

我也有一个取决于这些值的阈值。

高于此阈值的任何值都是重要的值。

我想将高于阈值的所有连续值组排序为双 ArrayList(这些将是重要事件)。

我想将这些双 ArrayList 放入一个 Arraylist,其中每个元素都是一个双 ArrayList。(ArrayList 的 ArrayList):

到目前为止,这是我的编码尝试:

ArrayList<Double> significantEvent = new ArrayList<Double>();

ArrayList<ArrayList<Double>> significantEventCollect = new ArrayList<ArrayList<Double>>();

for (int loop = 0; loop <  values.size(); loop++) {


    if (values.get(loop) >= threshold) {
        significantEvent.add(values.get(loop));
         System.out.println(values.get(loop));

    } else if (values.get(loop) < threshold && significantEvent.size() > 0) {
         System.out.println("");


        significantEventCollect.add(significantEvent);


        significantEvent.clear();



    }
}

//Each element appears to be empty at this point

for (int loop = 0 ; loop < significantEventCollect.size(); loop ++) {
    System.out.println(" Element size " + significantEventCollect.get(loop).size());

    }

而不是在清除和重新填充之前将相同的 ArrayList 值添加到 ArrayList 集合中,

每当一组新的值超过阈值时,我都希望有一个新的 arrayList 并将其添加到 ArrayList 集合中。

我不确定如何让代码动态地不断创建新的唯一 Arraylist 对象(其数量取决于方法中输入的 wav 文件)

任何有关如何实现这一目标的建议将不胜感激。

标签: javaarraylistdynamic

解决方案


推荐阅读