Type-1:
Below is a Java program that takes an ArrayList of strings and a specific word as input, then counts the number of occurrences of that word in the list:
import java.util.ArrayList; import java.util.Scanner;public class CountOccurrences {public static void main(String[] args) {// Create an ArrayList of strings ArrayList<String> wordList = new ArrayList<>(); Scanner scanner = new Scanner(System.in);// Add elements to the ArrayList wordList.add("apple"); wordList.add("banana"); wordList.add("apple"); wordList.add("orange"); wordList.add("grape"); wordList.add("apple"); // Input the word to count its occurrences
System.out.print("Enter a word to count its occurrences: ");String wordToCount = scanner.next();// Count occurrences of the word int occurrences = countOccurrences(wordList, wordToCount); // Output the result System.out.println("Occurrences of '" + wordToCount + "': " + occurrences); } // Method to count occurrences of a word in the ArrayList public static int countOccurrences(ArrayList<String> list, String word) {int count = 0;for (String str : list) { if (str.equals(word)) { count++; } } return count; } }Example usage:
Suppose the ArrayList contains the words "apple", "banana", "apple", "orange", "grape", and "apple". If the user enters "apple" as the word to count, the program will output:
Enter a word to count its occurrences: apple
Occurrences of 'apple': 3
Explanation:
- We start by creating an ArrayList of strings called wordList and add some elements to it.
- The user is prompted to input the word they want to count.
- We use a method called countOccurrences that takes the ArrayList and the word to count as parameters and returns the number of occurrences of that word in the list.
- The method uses a loop to iterate through the ArrayList and checks if each element is equal to the word being searched. If it matches, the count is incremented.
- The result is then printed to the console. In this example, "apple" appears 3 times in the ArrayList.
Type-2:
Another way to count the occurrences of a specific word in an ArrayList of strings is by using Java Streams. Java Streams provide a more concise and functional way to perform operations on collections. Here's the updated Java program using Streams:
import java.util.ArrayList; import java.util.Scanner;public class CountOccurrences { public static void main(String[] args) {// Create an ArrayList of strings ArrayList<String> wordList = new ArrayList<>(); Scanner scanner = new Scanner(System.in);// Add elements to the ArrayList
wordList.add("apple"); wordList.add("banana");wordList.add("apple"); wordList.add("orange"); wordList.add("grape"); wordList.add("apple");// Input the word to count its occurrences System.out.print("Enter a word to count its occurrences: ");String wordToCount = scanner.next(); // Count occurrences of the word using Streams
long occurrences = wordList.stream()
.filter(word -> word.equals(wordToCount))
.count();// Output the result System.out.println("Occurrences of '" + wordToCount + "': " + occurrences); } }Example usage and output remain the same as in the previous implementation:
Enter a word to count its occurrences: apple
Occurrences of 'apple': 3
Explanation:
- In this version, we use Java Streams to work with the ArrayList.
- We use the stream() method on the ArrayList to convert it into a Stream of elements.
- Then, we use the filter() method on the Stream to filter out only the elements that match the specified word (word.equals(wordToCount)).
- Finally, we call the count() method on the filtered Stream to count the occurrences of the specified word.
Using Streams, we can perform operations on collections in a more functional style, making the code concise and readable. In this case, we use the power of Streams to easily count the occurrences of a word in the ArrayList of strings.

0 Comments