gpt4 book ai didi

java - 当我将一个列表子列出到多个新列表中时,我丢失了项目。如何在不丢失数据的情况下子列表?

转载 作者:行者123 更新时间:2023-12-02 02:37:12 25 4
gpt4 key购买 nike

我有一个包含 10 项的列表:

List<ServiceLineTypeResource> serviceLineList = serviceLineRepository.findAll();

打印输出:

[Backup, COI, Network, Oracle, SQL_Activities, Storage, Unix/Linux, Virtualization, Windows, #N/A]

...我想分成三个单独的列表,每个列表各 3 个项目,不包括最后一个项目:

List<ServiceLineTypeResource> serviceLineListRow1 = serviceLineList.subList(0, min(serviceLineList.size(), 3));
List<ServiceLineTypeResource> serviceLineListRow2 = serviceLineList.subList(4, min(serviceLineList.size(), 7));
List<ServiceLineTypeResource> serviceLineListRow3 = serviceLineList.subList(8, min(serviceLineList.size(), 11));

我将每个列表与另一个不相关的列表一起添加到 HashMap 中:

HashMap<String, String> rowHashMap1 = new HashMap<>();
List<String> styleList = new ArrayList<>();
styleList.add("tile-pink");
styleList.add("tile-sqr tile-cyan");
styleList.add("tile-sqr tile-purple");
for (int i = 0; i < serviceLineListRow1.size(); i++) {
rowHashMap1.put(serviceLineListRow1.get(i).getName(), styleList.get(i));
System.out.println("Row 1: " + serviceLineListRow1.get(i).getName());
}

输出:

Row 1: Backup
Row 1: COI
Row 1: Network
Row 2: SQL_Activities
Row 2: Storage
Row 2: Unix/Linux
Row 3: Windows
Row 3: #N/A

由于某种原因,它总是跳过列表中的第 8 项,虚拟化,并给出最后一项,#。我希望每个“行”列表都包含三个项目,并且我不希望 # 出现在其中任何一个中。这是怎么回事?

最佳答案

https://docs.oracle.com/javase/8/docs/api/java/util/List.html#subList-int-int-

Returns a view of the portion of this list between the specified fromIndex, inclusive, and toIndex, exclusive.

因此,如果您想要前 9 项,则需要执行以下操作:

List<ServiceLineTypeResource> serviceLineListRow1 = serviceLineList.subList(0, min(serviceLineList.size(), 3));
List<ServiceLineTypeResource> serviceLineListRow2 = serviceLineList.subList(3, min(serviceLineList.size(), 6));
List<ServiceLineTypeResource> serviceLineListRow3 = serviceLineList.subList(6, min(serviceLineList.size(), 9));

关于java - 当我将一个列表子列出到多个新列表中时,我丢失了项目。如何在不丢失数据的情况下子列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46120093/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com