[英]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.