将字符串复制到Java中的数组
我一直在写一个程序,可以计算一个人的分数,但我无法将字符串转换成字符串数组(当我输入3个单词时,数组长度是1)。下面是我的代码。我哪里做错了将字符串复制到Java中的数组,java,arrays,Java,Arrays,我一直在写一个程序,可以计算一个人的分数,但我无法将字符串转换成字符串数组(当我输入3个单词时,数组长度是1)。下面是我的代码。我哪里做错了 protected static String[] getParts(){ Scanner keyboard = new Scanner(System.in); System.out.println( "What assignments make up your overall grade? (Homework, quizzes,
protected static String[] getParts(){
Scanner keyboard = new Scanner(System.in);
System.out.println( "What assignments make up your overall grade? (Homework, quizzes, etc)" );
String parts = keyboard.next();
Pattern pattern = Pattern.compile(" ");
String[] assignments = pattern.split(parts);
// to check the length
for ( int i = 0; i < assignments.length; i++ )
System.out.println(assignments[i]);
return assignments;
}
受保护的静态字符串[]getParts(){
扫描仪键盘=新扫描仪(System.in);
什么作业构成了你的总成绩?(家庭作业、测验等);
字符串部分=键盘.next();
Pattern=Pattern.compile(“”);
字符串[]赋值=模式。拆分(部分);
//检查长度
for(int i=0;i
Scanner::nextLine
Scanner::next()
只使用一个单词(它在空白处停止)。您需要的,它会消耗所有内容直到下一行,并将拾取您的所有单词。请改用keyboard.nextLine:
static String[] getParts()
{
Scanner keyboard = new Scanner(System.in);
System.out.println("What assignments make up your overall grade? (Homework, quizzes, etc)");
String[] assignments = keyboard.nextLine().split(" ");
for (String i : assignments)
System.out.println(i);
return assignments;
}
注意:您也不需要定义模式。您也不需要返回任何内容,因为该方法已经打印了字符串。当然,除非您计划在其他地方使用这些值请参见,这是否回答了您的问题?