簡體   English   中英

java - 如何將數組更改為每個名稱在java中單獨一行的字符串?

[英]How to change an arrays into a String with each name on a separate line in java?

我是 Java 的新手,我試圖從一個簡單的任務開始 - 按字母順序列出一組名稱。 目前,我的代碼很好:

import java.util.Arrays;
public class CLASSROOM_SSONG {
    String[] names = {"Joe", "Bob", "Andy"};
    public static void main(String args[]) {
        CLASSROOM_SSONG x =new CLASSROOM_SSONG();
        x.roster();
    }

    public String [] roster() {
        Arrays.sort(names);
        System.out.println(Arrays.toString(names));
        return names;

    }
}

但是,此代碼返回一個帶括號的 ARRAY,我更喜歡在沒有括號的單獨行上有名稱。 這就是我正在尋找它返回的內容:

Andy
Bob
Joe

我該怎么做? 我以為 'println' 會給每個單獨的一行,但現在我被卡住了。 我想不出一種方法,而不必單獨打印每個名稱,這完全違背了目的。

所有幫助將不勝感激!

哦,順便說一句,當我搜索答案時,有時我會用大量的輔助方法得到一些瘋狂的東西。 我更喜歡簡單的,我可以閱讀:)

最簡單的方法是一個接一個地輸出名稱。 這可以通過簡單的 for 循環或任何迭代器實現。

簡單的 For 循環:

String[] names = {"Joe", "Bob", "Andy"};

for (String name : names) {
  System.out.println(name);
}

您需要遍歷數組並打印出每個名稱:

for(String name: names) {
  System.out.println(name);
}

或者

for (int i=0; i < names.length; i++){
   System.out.println(names[i]);
}
    String array;

    for(int i=0;i<names.length;++i){
       array+=names[i]+"\n";
    } 
    System.out.println(array);

也許這不是最好的方法!

嘗試這個。

    Arrays.sort(names);  // sort first

    System.out.println(String.join("\n", Arrays.asList(names)));
    // Arrays.asList(names) converts the string into an ArrayList   

您可以使用JAVA 8對每個元素進行排序並在新行上打印。

import java.util.Arrays;
public class CLASSROOM_SSONG {
    String[] names = {"Joe", "Bob", "Andy"};
    public static void main(String args[]) {
        CLASSROOM_SSONG x =new CLASSROOM_SSONG();
        x.roster();
    }

    public void roster() {
        // sort the array and print it to new line
        Arrays.stream(names).sorted().forEach(System.out::println);
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM