gpt4 book ai didi

java - 在java中将列表元素分为不同的组

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

假设我有一个列表,它的计数始终为偶数。现在我想使用以下条件将列表与不同的组索引分开,

1) First element (1st element) with one index (EX: 1)
2) Next two elements with same index (Ex: 2nd, 3rd element with index 2,
4th and 5th element with index 3)
3) Last element(6th element) with index 4

我尝试使用嵌套 for 循环来实现相同的目的,但没有得到预期的输出。

感谢任何帮助。输入示例:

[2,3,53,52,33,12,44,66]

示例输出:

2 - 1
3 - 2
53 - 2
52 - 3
33 - 3
12 - 4
44 - 4
66 - 5

最佳答案

我已经使用两个附加变量 z 和 count 实现了这一点,仅当 count%2 为 0 时我才递增 z,最后我们需要检查 size-1 是否等于 i 变量第三个条件。

此外,对于第一个条件,如果 i 计数器值为 0,我将打印第一个索引处的 arraylist 值和 i 处的 z 变量值。

请参阅下面我为您手动添加的输入列表模拟的代码!请使用链接进行测试:

http://rextester.com/ESYF23501

import javafx.collections.ArrayChangeListener;
import java.util.ArrayList;
import java.util.Scanner;

public class Main {

public static void main(String[] args) {
ArrayList<Integer> a= new ArrayList<Integer>();
a.add(2);
a.add(3);
a.add(53);
a.add(52);
a.add(33);
a.add(12);
a.add(44);
a.add(66);
int i = 0;
int z = 2;
//Count to group the middle number by checking its value with respect to mod 2
int count = 0;

for (i = 0; i < a.size(); i++)
{

if (i == 0)
{
z = i+1;
System.out.println(""+a.get(i)+" " + "" +z+"" );
}

if (i > 0 && i != (a.size() -1))
{
// Increment z if the count is even so that we print the group for two times
if (count%2 == 0)
{
z++;
}

System.out.println(""+a.get(i)+"" +" "+ ""+z+"" );
count ++;
}

if (i == a.size() -1 )
{
z++;
System.out.println(""+a.get(i)+"" +" "+ ""+z+"" );
}
}
}
}

关于java - 在java中将列表元素分为不同的组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47965674/

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