如何转换从另一个 class 生成的列表

How to convert an list generated from another class

我制作了这个 class 生成一个 ArrayList() 随机整数:

import java.util.*;

public class RandomListGenerator {
    public static void main(String[] args){
        // Ask for an integer as user input.
        Scanner input = new Scanner(System.in);
        System.out.println("Please enter an integer between 1 and 10: ");
        int inp = input.nextInt();

        List<Integer> arr = genRandArrOfInts(inp);
        System.out.println("Generated a list of random integers: "+arr);
    }

    public static List<Integer> genRandArrOfInts(int n) {
        ArrayList<Integer> list = new ArrayList<>(n); // Create new ArrayList() of length n
        Random r = new Random();
        for (int i = 0; i < n; i++) {
            list.add(r.nextInt(10 + 10) - 10); // We get random ints in range max = 10 and min = -10
        }
        return list;
    }
}

当我 运行 这个 class 本身时,它工作正常,我得到这个输出:

Please enter an integer between 1 and 10: 
10
Generated a list of random integers: [0, -1, -3, -8, -9, 1, 3, 0, 8, -1]

但是当我尝试在另一个 class 中使用它并像这样打印时:

public class Lab2Array {
    public static void main(String[] args){
        randomListGenerator list = new randomListGenerator();
        System.out.println("Generated this list of random integers: "+list);
    }
}

我得到的输出是:

Generated this list of random integers: randomListGenerator@15aeb7ab

如何转换它才能得到 ArrayList<Integer>?我还需要在其他 classes 中使用生成器,所以我想把它变成自己的 class 而不是在 lab2Array-class

调用实际 returns 您想要的整数列表的方法。

此外,无需实例化对象。你的方法是static,所以不用对象也可以调用。

public class Lab2Array {
    public static void main(String[] args){
        System.out.println("Generated this list of random integers: "+ RandomListGenerator.genRandArrOfInts(10));
    }
}