2014-12-04 3 views
-3

У меня есть этот вопрос: Вам нужно будет сделать некоторые предположения о словах. Возможно, самым простым предположением является то, что слово представляет собой последовательность альфа-числовых символов, которая может содержать или не содержать дефис. Используя его определение, мы можем легко подсчитать слова, потому что они будут прерваны появлением пространственного символа.Word Counter с дефис

Это мой код, можете ли вы помочь мне разработать мой код с учетом Вопроса выше?

public void counting() 
{ 
    while (file.hasNextLine()) // to count lines 
    { 
    Clines++; 
    Scanner line = new Scanner (file.nextLine()); 

    while (line.hasNext()) // to conunt words 
    { 
     Cwords++; 
     String word = line.next(); 

     for (int i = 0; i < word.length(); i++) 
     { 
     Cchars++; 
     } 
    } 
} 
} 
+3

Так что же это проблема? – Mureinik

+0

Stackoverflow здесь не для того, чтобы делать домашнее задание для вас – hardillb

+0

Конечно, какая помощь вам нужна? Неясно, каков ваш вопрос. – tnw

ответ

1

Если вы хотите посчитать слова линии, которую вы должны сделать это:

public void counting() 
{ 
    int wordCount = 0; 
    while (file.hasNextLine()) // to count lines 
    { 
    Clines++; 
    Scanner line = new Scanner (file.nextLine()); 
    wordCount += line.split(" ").length; 
    } 
} 
+0

Но что, если у меня есть слово, которое делится на два слова из-за дефиса, как «comme_ enter», хотя это одно слово. Как я могу считать их одним словом? – Delmar

+0

Слово, содержащее дефис, считается одним словом, а не двумя. –

+0

Спасибо, дорогой друг – Delmar

Смежные вопросы