2012-10-15 27 views
5

在這部分代碼:顯示在單獨的線(控制檯)各列表元素

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

Ç

d

或者,至少:

一個,

B,

c,

d

回答

17

遍歷元素,單獨打印每個元素。

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

另外,爪哇8語法提供了一個很好的速記做同樣的事情用一個方法參考

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

或拉姆達

list.forEach(t -> System.out.println(t)); 
+0

謝謝!這工作:) – rsb2097

+0

其實,我不得不輸入aprovados而不是列表,所以: for(String element:[ARRAY NAME HERE]){ System.out.println(element); } – rsb2097

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