count no. of words in a string in java without using split function code example
Example: count word in string no matter the delimiter java
public static void main(String[] args)
{
//Scanner object instantiation
Scanner dude = new Scanner(System.in);
//variable declaration
String string1 = "";
int count = 0;
boolean isWord = false;
//user prompt and input
System.out.println("Enter in your string");
string1 = dude.nextLine();
int endOfLine = string1.length()-1;
char ch [] = string1.toCharArray();
for (int i = 0; i < string1.length(); i++)
{
if(Character.isLetter(ch[i]) && i != endOfLine)
{//if character is letter and not end of line
isWord = true; //it is part of a word
}
if (!Character.isLetter(ch[i]) && isWord)
{ //if character is not a letter, and previous
//character is a letter i.e. non-letter is
//preceded by character
count++; //add to word count
isWord = false; //get ready to detect new word
}
if (Character.isLetter(ch[i]) && i == endOfLine)
{ //if character is letter
//and at end of line
count++; //add to word count
isWord = false;
}
}
System.out.println("There are " +count+ " words");
}