Frequently Asked Java Program 30: Java Program to Find Distinct Characters In Given String
Hello Folks,
As part of Frequently Asked Java Programs In Interviews For Freshers And Experienced, in this post we will see a java program to Find Distinct Characters In Given String.
Problem Statement:
User input: Make Selenium Easy
Output: K L N I U Y
Problem Solution:
Logic:
- Convert input string in to same case either upper or lower.
- Replace all whitespace with empty space.
- Take first char from given String.
- lastIndexOf(char c) method of String class gives the index of last occurrence of char in given string. If a character is not repeated in given string, lastIndexOf should give zero as we took first char to check. If it is zero, print.
- To repeat step 3 and 4, we must need to replace already checked char from string with empty space.
Java Program:
package StringPrograms; import java.util.Scanner; public class FindDistinctCharInString { public static void findPrintDistinctCharInString(String inputString) { // Converting input string to upper case inputString = inputString.toUpperCase(); // Removing all white spaces inputString = inputString.replace(" ", ""); // We need to keep counting char till its length is greater than 0 while (inputString.length() > 0) { // Extracting first char char c = inputString.charAt(0); /* * lastIndexOf(char c) method of String class gives the index of last occurrence of char in given string. * If a character is not repeated in given string, lastIndexOf should give zero as we took first char to check. * If it is zero, print. */ if(inputString.lastIndexOf(c)==0) System.out.print(c+" "); // Remove char whose occurrence is checked inputString = inputString.replace(Character.toString(c), ""); } } public static void main(String[] args) { // User input for the string to know distinct characters Scanner sc = new Scanner(System.in); System.out.println("Please enter the string to find distinct characters:"); String userInput = sc.nextLine(); sc.close(); System.out.println("You entered: " + userInput); findPrintDistinctCharInString(userInput); } }
Output:
Please enter the string to find distinct characters:Make Selenium EasyYou entered: Make Selenium Easy
K L N I U Y