制作了一个根据用户输入计算和输出用户的程序。我希望程序使用换行符一个在另一个下面显示名称,但仍然坚持如何。代码如下:
package uk.ac.reading.cs2ja16.Glen.Stringtest;
import java.util.Arrays;
import java.util.Scanner;
public class stringnames {
public static String[] countNames (String names) {
// Create Scanner object
@SuppressWarnings("resource")
Scanner names1 =new Scanner(System.in);
// Read a string
String read= names1.nextLine();
// Split string with space
String numPeople[]=read.trim().split(" ");
System.out.println("The Number of names inputted is: "+ numPeople.length);
return numPeople;
}
public static void main(String[ ] args){
System.out.println("Enter the amount of names you want(make sure you make space for each name):\n");
String[] namesout = countNames(null);
System.out.println(Arrays.toString(namesout));
}
}
答案 0 :(得分:1)
首先,countNames
方法不需要参数,因此在方法声明中删除String names
thingy。并在方法调用中删除单词null
。
现在,如果你使用的是Java 8,你可以使用for循环或使用新Stream API中的一种方法。
我会告诉你两种方式。
For loop:
for (String name: namesout) {
System.out.println(name);
}
println
方法会自动在要打印的字符串末尾添加换行符。
Stream API:
Arrays.stream(namesout).forEach(System.out::println);