JAVA-subList返回FOR循环内部的空列表

JAVA-subList返回FOR循环内部的空列表,java,Java,我面临着以下问题。 我有一个列表总数(大小:S),我需要将其拆分为N个连续块。代码如下: int start_index, end_index; for(int i = 0; i < N; i++){ start_index = (S/N)*i; end_index = start_index + (S/N) - 1; List<String> SUBblock = TOTAL.subLi

我面临着以下问题。 我有一个列表总数(大小:S),我需要将其拆分为N个连续块。代码如下:

int start_index, end_index;

        for(int i = 0; i < N; i++){
            start_index = (S/N)*i;
            end_index = start_index + (S/N) - 1;
            List<String> SUBblock = TOTAL.subList(start_index, end_index-1);
            System.out.println("block "+i+": from "+start_index+" to "+end_index);
            System.out.println("block "+i+": "+SUBblock .toString());
        }
int开始索引,结束索引;
对于(int i=0;i
索引正确:第一个
System.out.println
工作正常。 但是
子块
总是空的。 for循环外部的子列表调用工作正常:例如,
TOTAL.subList(0,2)
按预期返回第一个和第二个元素


这里有什么我遗漏的吗?

我想你在计算开始和结束指数时犯了一个错误。尝试以下代码

  for(int i = 0; i < N; i++){
        start_index = (S/N)*i;
        end_index = start_index + (S/N);
        List<String> SUBblock= (TOTAL.subList(start_index, end_index)); 

        System.out.println("block "+i+": from "+start_index+" to "+end_index);
        System.out.println("block "+i+": "+SUBblock .toString());
    }
for(int i=0;i
什么是
列表总数(大小:S)
??你是用小尺寸创建的吗?@Jordi一个名为
TOTAL
列表,其大小为
S
end\u index-1
看起来可疑。你知道传递给
子列表的结束索引不包括在内,对吧?嗯,我明白了
S
是最终变量吗?哪个值?。。。在这里输入问题涉及的重要对象会很好。…@Arkadiy它应该是
end\u index+1
(键入错误)。现在它工作了!谢谢