import java.util.*;
class A{
    public static void main(String[] args){
    }
    private List <B> bList;
    private Random generator = new Random();
    A(List<B> initialList){
        bList = new ArrayList<B> ();
        int listSize = initialList.size();
        bList.ensureCapacity(listSize);
             for (B b : initialList) {
             int bIndex = generator.nextInt(listSize);
             bList.add(bIndex , b);
        }
    }
}
class B{
}

我一直在阅读错误

线程“主”中的异常java.lang.RuntimeException:无法编译
源代码-错误的符号类型:java.util.List.ensureCapacity

最佳答案

IDE总是很不错,如果您使用任何IDE进行编程,时间都是宝贵的,您肯定会在此bList.ensureCapacity(listSize);行上带有一条红色标记,并带有一条消息,这将确保您有时间找到解决方案,该消息清楚地表明ensureCapacity(int)未定义用于列表界面。

The method ensureCapacity(int) is undefined for the type List<B>

所以ensureCapacity(int)方法在ArrayList的List接口的实现中可用,将您的这行(bList)bList.ensureCapacity(listSize)转换为((ArrayList<B>) bList).ensureCapacity(listSize);

关于java - 确保容量未被识别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15445827/

10-10 06:09