Java 代码评估:这被认为是一种不好的做法吗?

Java 代码评估:这被认为是一种不好的做法吗?,java,Java,此代码是否被视为不良做法?它是否比应该使用的内存更多 int[] generateCoordinates(){ return new int[]{ new Random().nextInt(100), new Random().nextInt(100), new Random().nextInt(100) }; 是的,它使用的内存比它应该使用的要多,但是如果只调用generateCoordinates()几

此代码是否被视为不良做法?它是否比应该使用的内存更多

int[] generateCoordinates(){
    return new int[]{
            new Random().nextInt(100),
            new Random().nextInt(100),
            new Random().nextInt(100)
    };

是的,它使用的内存比它应该使用的要多,但是如果只调用
generateCoordinates()
几次,它不会有多大区别

也就是说,当一个实例可以满足您的所有需求时,没有理由创建多个
Random

int[] generateCoordinates() {
    Random random = new Random();
    return new int[] {
            random.nextInt(100),
            random.nextInt(100),
            random.nextInt(100)
    };
}

如果多次调用
generateCoordinates()
,将
random
作为一个实例变量是有意义的,因为实例化和垃圾收集大量
random
对象可能成本高昂。

这是对资源的浪费,您不需要3个Random类实例来执行该操作
返回new Random().ints(3,0100).toArray()会更好。