在 java arraylist(非静态 arraylist)中每 2 个字符打印

Print per 2 char in java arraylist (non static arraylist)

我是 java 的新手。我正在努力打印一些东西,这是我的 arraylist

arraylist = ['a','u','o','e']

如果我的数组列表不是静态长度数组列表。我怎么能把那个列表打印到这个

“您的价值:au, oe”

我有点困惑

感谢提前

您可以像这样将字符串与字符“+”连接起来。

System.out.println("Your Value: " + arraylist.get(0) + arraylist.get(1) + ", " + arraylist.get(2) + arraylist.get(3));

或者您可以使用更聪明的方法,在 String class 中使用称为“格式”的静态方法,如下所示:

System.out.println(String.format("Your Value: %s%s, %s%s", arraylist.get(0), arraylist.get(1), arraylist.get(2), arraylist.get(3)));

阅读这篇 post:

,您可以了解更多关于 String.format() 的信息

https://www.javatpoint.com/java-string-format

所以数组是一种数据类型,我们用它来在单个变量中存储多个值。数组从索引 0 而不是 1 开始。所以这意味着数组中的第一个元素的索引为 0

array = {0, 1, 2, 3, 4}

因此,对于您的示例,我们希望这样做:

System.out.println("Your Value: " + arrayList.get(0) + arrayList.get(1) + "," + arrayList.get(2) + arrayList.get(3)

我们说 arrayList.get(0) 访问数组中的第一个字母 'a'

您可以简单地循环数组并打印每个字符,当 (index +1) % 2 == 0 && i != list.size() -1 表示它是第 2、4、6、... 元素而不是最后一个时,打印一个额外的 ,.

  public void printArray() {
        List<Character> list = new ArrayList<>(Arrays.asList('a', 'u', 'o', 'e'));
        System.out.print("Your Value: ");
        for (int i = 0; i < list.size(); i++) {
            System.out.print(list.get(i));
            if ((i + 1) % 2 == 0 && i != list.size() - 1) {
                System.out.print(",");
            }
        }
    }