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