Programming Pandit

c/c++/c#/Javav/Python


Latest Update

Monday, February 24, 2025

Java program that performs string operations using ArrayList.

 Objective: Write a program to perform string operations using Array List. Write functions for the following a. Append - add at end b. Insert add at particular index c. Search d. List all string starts with given letter. 

Code:

import java.util.ArrayList;

import java.util.Scanner;


public class StringOperations {

    private ArrayList<String> stringList;


    // Constructor to initialize the ArrayList

    public StringOperations() {

        stringList = new ArrayList<>();

    }


    // a. Append - Add at the end

    public void appendString(String str) {

        stringList.add(str);

        System.out.println("\"" + str + "\" added at the end.");

    }


    // b. Insert - Add at a particular index

    public void insertString(int index, String str) {

        if (index >= 0 && index <= stringList.size()) {

            stringList.add(index, str);

            System.out.println("\"" + str + "\" inserted at index " + index);

        } else {

            System.out.println("Invalid index! Index should be between 0 and " + stringList.size());

        }

    }


    // c. Search - Find a string

    public void searchString(String str) {

        if (stringList.contains(str)) {

            int index = stringList.indexOf(str);

            System.out.println("\"" + str + "\" found at index " + index);

        } else {

            System.out.println("\"" + str + "\" not found in the list.");

        }

    }


    // d. List all strings that start with a given letter

    public void listStringsByLetter(char letter) {

        boolean found = false;

        System.out.println("Strings starting with '" + letter + "':");

        for (String str : stringList) {

            if (str.toLowerCase().charAt(0) == Character.toLowerCase(letter)) {

                System.out.println(str);

                found = true;

            }

        }

        if (!found) {

            System.out.println("No strings found starting with '" + letter + "'.");

        }

    }


    // Display all strings in the list

    public void displayList() {

        System.out.println("Current String List: " + stringList);

    }


    public static void main(String[] args) {

        StringOperations obj = new StringOperations();

        Scanner scanner = new Scanner(System.in);


        while (true) {

            System.out.println("\nChoose an operation:");

            System.out.println("1. Append String");

            System.out.println("2. Insert String at Index");

            System.out.println("3. Search String");

            System.out.println("4. List Strings Starting with a Letter");

            System.out.println("5. Display All Strings");

            System.out.println("6. Exit");

            System.out.print("Enter your choice: ");


            int choice = scanner.nextInt();

            scanner.nextLine(); // Consume newline


            switch (choice) {

                case 1:

                    System.out.print("Enter string to append: ");

                    String appendStr = scanner.nextLine();

                    obj.appendString(appendStr);

                    break;


                case 2:

                    System.out.print("Enter index: ");

                    int index = scanner.nextInt();

                    scanner.nextLine(); // Consume newline

                    System.out.print("Enter string to insert: ");

                    String insertStr = scanner.nextLine();

                    obj.insertString(index, insertStr);

                    break;


                case 3:

                    System.out.print("Enter string to search: ");

                    String searchStr = scanner.nextLine();

                    obj.searchString(searchStr);

                    break;


                case 4:

                    System.out.print("Enter starting letter: ");

                    char letter = scanner.next().charAt(0);

                    obj.listStringsByLetter(letter);

                    break;


                case 5:

                    obj.displayList();

                    break;


                case 6:

                    System.out.println("Exiting...");

                    scanner.close();

                    System.exit(0);

                    break;


                default:

                    System.out.println("Invalid choice! Please enter a number between 1 and 6.");

            }

        }

    }

}


Output:








No comments:

Post a Comment