Java 按字符的2个索引循环

Java 按字符的2个索引循环,java,arraylist,Java,Arraylist,我需要帮助才能循环到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 注意,一旦我读了前2个,我就跳到第三个和第四个索引; 感谢您喜爱的Stack社区试试这个简单的代码 String [] arr = {"PR", "PS", "QS", "QT", "RP", "RT", "SP", "SQ", "TQ", "TR"};

我需要帮助才能循环到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
注意,一旦我读了前2个,我就跳到第三个和第四个索引; 感谢您喜爱的Stack社区

试试这个简单的代码

    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));
    }

@thready袋熊解决方案很好,但是如果你的数组大小很奇怪怎么办?假设列表末尾还有一个值XY,则输出应为:

trxy

我认为处理这个奇怪的案例是个好主意,我的解决方案是:

        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));
                }
        }

是的,加油!哈哈,如果你有一些可以分享的话,兄弟?请把你到现在为止尝试过的代码贴出来,很好,但是你应该用%n而不是\n在你的printf中。谢谢你,我的朋友,它正在工作;对于int i=0,我只需要这种循环;i@dildeepak谢谢你的评论,两者都很好,但我认为我的方式强化了我的意图
        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