2016-12-23 63 views
-5

下面的代码仅输出“输入字符串”并接受用户输入,但不显示字符串中的字符数。请帮助!如何在java中查找字符串中的字符数

System.out.println("Enter a string"); 
Scanner scan = new Scanner(System.in); 
String result = scan.nextLine(); 


try { 
while (a != null) { 
    count++; 
} 
} catch (Exception e) { 
System.out.println("Invalid string"); 
} 

System.out.println("The number of characters are : " + count); 
+3

请详细说明您期望程序如何一步一步完成。 –

+3

你有一个非常明显的无限循环。 – CollinD

回答

1

您可以使用String.length()来计算你的输入字符串的长度:

System.out.println("Enter a string"); 
    Scanner scan = new Scanner (System.in); 
    String a = scan.nextLine(); 

    System.out.println("The number of characters are : " + a.length()); 
0

oschlueter是正确的。另外,当使用java.util.Scanner从用户输入中获取字符串时,您不需要try/catch来查找无效字符串,因为用户可以输入的任何内容都可以是字符串。但是,通过Scanner.nextInt询问号码时,您将需要Try/Catch。

此外,它通常建议捕获一个特定的错误,而不仅仅是Exception。在这种情况下,你会赶上java.util.InputMismatchException