在Java中将泛型范围实现为函数参数的最佳方法是什么?

ple*_*unt 3 java

我有一个需要范围作为参数的函数.域为[0-100],它包括0和100.范围参数可以是例如:

[1-8, 18, 20-88, 90-92]

要么

[1, 10-30]

范围不重叠.我对机制感兴趣 - 如何最好地传递范围参数?阵列?或使用变量参数?

Til*_*err 5

使用Range对象列表:

class Range
{
    int low;
    int high;

    Range(int low, int high)
    {
        this.low = low;
        this.high = high;
    }
}

List<Range> rangeArray = new ArrayList<Range>();
Run Code Online (Sandbox Code Playgroud)

然后分配这样的范围:

rangeArray.add(new Range(1,8));
rangeArray.add(new Range(18,18));
rangeArray.add(new Range(20,88));
rangeArray.add(new Range(90,92));
Run Code Online (Sandbox Code Playgroud)