Write code to count Words in a string
//package com.book2s; import java.util.regex.Pattern; public class Main { public static void main(String[] argv) { String str = "book2s.com"; System.out.println(countWords(str)); }/*from w w w. j a v a 2 s.c o m*/ public static int countWords(String str) { int words; char prev_char, cur_char; if (str.length() == 0) return 0; if (str.length() == 1) return Character.isWhitespace(str.charAt(0)) ? 1 : 0; words = 0; prev_char = str.charAt(0); for (int i = 1; i < str.length(); i++) { cur_char = str.charAt(i); // if we are at a word end if (Character.isWhitespace(cur_char) && !Character.isWhitespace(prev_char)) words++; prev_char = cur_char; } // check if we ended with a word if (!Character.isWhitespace(str.charAt(str.length() - 1))) words++; return words; } public static int countWords(String sentence, String separator) { return sentence.split(Pattern.quote(separator)).length; } }