13

在这部分代码中:

    System.out.println("Alunos aprovados:");
    String[] aprovados = {"d", "a", "c", "b"};
    List<String> list = new ArrayList();
    for (int i = 0; i < aprovados.length; i++) {
        if (aprovados[i] != null) {
            list.add(aprovados[i]);
        }
    }

    aprovados = list.toArray(new String[list.size()]);
    Arrays.sort(aprovados);
    System.out.println(Arrays.asList(aprovados));

System.out.println 的示例结果是:

[A B C D]

如果我想要下面的结果,我该如何修改上面的代码?

一种

b

C

d

或者至少:

一种,

乙,

C,

d

4

2 回答 2

29

遍历元素,分别打印每个元素。

for (String element : list) {
    System.out.println(element);
}

或者,Java 8 语法提供了一个很好的简写,可以通过方法引用来做同样的事情

list.forEach(System.out::println);

或 lambda

list.forEach(t -> System.out.println(t));
于 2012-10-15T00:25:05.817 回答
1

如果想在同一行显示每个元素,不带括号:

public static void main(String[] args) {
    Set<String> stringSet = new LinkedHashSet<>();
    stringSet.add("1");
    stringSet.add("2");
    stringSet.add("3");
    stringSet.add("4");
    stringSet.add("5");
    int i = 0;
    for (String value : stringSet) {
        if (i < stringSet.size()-1) {
            System.out.print(value + ",");
        } else {
            System.out.print(value);
        }
        i++;
    }
}
于 2014-10-28T17:01:29.023 回答