我需要帮助才能循环到ArrayList:
[PR,PS,QS,QT,RP,RT,SP,SQ,TQ,TR]
所以我的输出是这样的:
1) PR PS
2) QS QT
3) RP RT
4) SP SQ
5) TQ TR
请注意,一旦我读完前两个,我跳到第三个第四个索引; 谢谢你心爱的Stack社区
答案 0 :(得分:3)
试试这个简单的代码
String [] arr = {"PR", "PS", "QS", "QT", "RP", "RT", "SP", "SQ", "TQ", "TR"};
List<String> list = Arrays.asList(arr);
for (int i = 0; i < list.size() - 1; i = i + 2) {
System.out.printf("%s %s %n", list.get(i), list.get(i + 1));
}
或者如果你想要编号
System.out.printf("%d) %s %s %n", (i / 2) + 1, list.get(i), list.get(i + 1));
答案 1 :(得分:0)
@Scary Wombat解决方案很棒,但是如果你有一个奇怪的阵列大小怎么办?假设您在列表末尾还有一个值XY,输出应为:
TR XY
我认为照顾奇怪的情况是个好主意,我的解决方案是:
List<String> array = Arrays.asList("PR", "PS", "QS", "QT", "RP", "RT", "SP", "SQ", "TQ", "TR", "XY");
for (int i=0; i<array.size(); i++) {
if (i%2==1 || i == array.size()-1) {
System.out.println(array.get(i-1)+", "+array.get(i));
}
}
以下代码会导致下一个输出:
PR, PS
QS, QT
RP, RT
SP, SQ
TQ, TR
TR, XY