必须创建一个程序,用户在其中输入一个句子,然后该程序告诉用户字数中的字符数。我有一个错误,我认为是来自countWords方法造成的,如下所示:
Exception in thread "main" java.util.InputMismatchException
at java.base/java.util.Scanner.throwFor(Scanner.java:939)
at java.base/java.util.Scanner.next(Scanner.java:1594)
at java.base/java.util.Scanner.nextInt(Scanner.java:2258)
at java.base/java.util.Scanner.nextInt(Scanner.java:2212)
在JavaProgram.main
import java.util.Scanner;
public class Assignment9_jcolwell1297005{
public static void main (String [] args){
Scanner input = new Scanner (System.in);
System.out.print( "Enter a sentence:");
String sentence = input.next();
System.out.print( "Enter 1 to count characters, 2 to count words:");
int number = input.nextInt();
if (number == 1)
countCharacters(sentence);
else if (number == 2)
countWords(sentence);
else
System.out.println("You did not enter a 1 or 2");
}
public static void countCharacters(String str){
System.out.println( "The length of " + str + " is " + str.length());
}
public static void countWords(String str){
String spaceHolder = " ";
int count = 0;
for (int j = 0; j < str.length(); j++){
if (spaceHolder.equals(str.charAt(j)))
count++;
}
System.out.println( "The number of words is" + count);
}
}
如果输入句子“一二三”,然后输入“ 2”,则结果应为“ 3”