2015-09-06 65 views
-1

所以我刚开始接受我的第一个Java编程类,所以不要伤害我成为一个新人。我知道这可能是一件简单的事情,但我坚持要在哪里开始。我想制作一个程序,只需使用扫描仪实用程序计算字符串中的字符数。到目前为止,我有...一个学习程序员的基本程序

import java.util.scanner 
class Counter 
{ 
    public static void main(String[] args) 
    { 
     Scanner input = new Scanner(System.in); 
     System.out.println("Type a sentence, and I will tell you how many 
     characters are in it."); 
     String sentence = input.nextString(); 

而这就是我所得到的。我想要做的就是前面加...

Char character; 

,并做一些事情,也许一个for循环,但我只是难倒。 即使我真的想这样做,我不知道如何去做。有任何想法吗?

谢谢! 〜安德鲁

编辑:

import java.util.Scanner; 
class Counter 
{ 
    public static void main(String[] args) 
    { 
     Scanner input = new Scanner(System.in); 
     System.out.println("Type a sentence, and I will tell you how many 
     characters are in it."); 
     String sentence = input.nextLine(); 
     sentence = sentence.trim(); 
     System.out.print("This sentence has " + sentence.length() + "  
     characters in it."); 
    } 
} 

似乎并没有工作。

回答

-1

首先,要读取Scanner您必须使用input.nextLine();而不是input.nextString();

后,您可以使用.length()功能知道多少位置有你String(多少个字符有你String),这样你就不必把它转换为任何字符或什么的。

System.out.println(sentence.length()); 

我期待它对您有所帮助!

+0

添加此工作的罚款。但有什么办法可以排除空格和符号吗? –

+0

@AndrewM排除空格,您可以使用类'String'的'.trim()'函数:http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#修剪()。关于符号我不安全,但我想你可以用正则表达式来做到这一点。 –

+0

@AndrewM让我知道你是否对如何使用'.trim()'函数有所怀疑。 –

1
  1. 您必须使用input.nextLine()而不是input.nextString()来捕获用户给出的句子。

  2. 您还必须使用该句子上的trim()方法删除用户在句子正面和背面给出的空格。 例如:sentence.trim()

  3. 您可以通过length()方法获取句子的长度。 例如:sentence.length()

现在,我给你完整的代码来计算给定的句子的字母:

import java.util.Scanner; 

public class LetterCount 
{ 
    public static void main(String[] args) 
    { 
     Scanner input = new Scanner(System.in); 
     System.out.println("Type a sentence, and I will tell you how many characters are in it."); 
     String sentence = input.nextLine(); 
     System.out.print("This sentence has " + sentence.trim().length() + " characters in it.");  
    } 
}