2015-09-06 64 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.");  
    } 
}