编程语言
首页 > 编程语言> > java – guava-libraries:包含n个实例的列表

java – guava-libraries:包含n个实例的列表

作者:互联网

Java Collections类具有以下方法:

static <T> List<T> nCopies(int n, T o)

我需要一个类似的方法,但稍微更通用,它提供给定类的n个实例.就像是:

static <T> List<T> nInstances(int n, Supplier<T> supplier)

特别是,如果供应商是Supplier.ofInstance(o),我们会得到与nCopies()方法相同的行为.在Guava API中是否有这样的方法?

谢谢.

解决方法:

不,但实施起来很容易:

public static <T> List<T> nInstances(int n, Supplier<T> supplier){
    List<T> list = Lists.newArrayListWithCapacity(n);
    for(int i = 0; i < n; i++){
        list.add(supplier.get());
    }
    return list;
}

标签:java,guava,utility-method
来源: https://codeday.me/bug/20190610/1212040.html