固定子列表计数,但Java中为动态成员 - java

我有以下整数列表

List<Integer> arrayList = new ArrayList<Integer>();
   for (int i = 0; i < 7; i++) {
    arrayList.add(i);
}

所以列表是这样的[0,1,2,3,4,5,6]。我的情况是

如果我将value = 5作为参数,那么我想像这样拆分5个子列表

[0,5], [1,6] , [2], [3], [4]

如果我将value = 4作为参数,那么我想像这样拆分4个子列表

[0,4], [1,5], [2,6] , [3]

如果我将value = 3作为参数,那么我想像这样拆分3个子列表

[0,3,6], [1,4], [2,5]

我已经使用以下功能进行了测试,但这不是我的需要。

public List<List<Integer>> chopped(List<Integer> list, final int splitCount) {
        List<List<Integer>> parts = new ArrayList<List<Integer>>();
        final int N = list.size();
        for (int i = 0; i < N; i += splitCount) {
            parts.add(new ArrayList<Notification>(list.subList(i, Math.min(N, i + splitCount))));
        }
        return parts;
    }

在上面的函数中,我将splitCount赋予5然后该函数返回

[0,1,2,3,4], [5,6]

我期望的结果是[0,5], [1,6] , [2], [3], [4]

参考方案

怎么样:

public List<List<Integer>> chopped(List<Integer> list, final int splitCount) {
    List<List<Integer>> parts = new ArrayList<>(splitCount);
    for (int i = 0; i < splitCount; ++i) {
        parts.add(new ArrayList<>());
    }
    final int N = list.size();
    for (int i = 0; i < N; ++i) {
        parts.get(i % splitCount).add(list.get(i));
    }
    return parts;
}

JAVA 8具有任何匹配属性的对象的过滤器列表 - java

我的要求是通过匹配任何属性的字符串来过滤对象列表。例如,假设Contact类具有三个属性:街道,城市,电话。我知道java流过滤器是如何工作的,在这里我必须将输入字符串与每个属性进行比较,如下所示:contactList.stream().filter(contact -> contact.getStreet().equals("dubai&…

Java中的“ <<”运算符 - java

最喜欢的语句来自Java的Character类:(1 << Character.PARAGRAPH_SEPARATOR)) >> type PARAGRAPH_SEPARATOR是字节,type是整数。这句话中的操作员,他们做什么?如何以及在哪里可以使用这些运算符?这是oracles java.lang.Character文档。该类中…

JAVA:如何检查对象数组中的所有对象是否都是子类的对象? - java

我有一个对象数组。现在,我要检查所有这些对象是否都是MyObject的实例。有没有比这更好的选择:boolean check = true; for (Object o : justAList){ if (!(o instanceof MyObject)){ check = false; break; } } java大神给出的解决方案 如果您不喜欢循环,则…

用glassfish服务器进行struts2会话维护 - java

在我的应用程序中,有5分钟的会话超时。<session-config> <session-properties> <property name="timeoutSeconds" value="300"></property> </session-properties…

java:继承 - java

有哪些替代继承的方法? java大神给出的解决方案 有效的Java:偏重于继承而不是继承。 (这实际上也来自“四人帮”)。他提出的理由是,如果扩展类未明确设计为继承,则继承会引起很多不正常的副作用。例如,对super.someMethod()的任何调用都可以引导您通过未知代码的意外路径。取而代之的是,持有对本来应该扩展的类的引用,然后委托给它。这是与Eric…