Prev Next

Java / Programs

Write a Java program to find the last repeating character in a String.

The below program is implemented using Java 8.

public class LastOccuranceOfRepeatingChar {

	public static void main(String[] args) {

		String str = "abcdklja";

		Set<Integer> myTempHashSet = new HashSet<>();

		str.codePoints().filter(i -> myTempHashSet.add(i) == false).reduce((first, second) -> second)
				.ifPresent(c -> System.out.println("Last repeating char: " + (char) c));

	}

}

The below version is for Java 7 or less.

public class LastOccuranceOfRepeatingCharJava7 {

	public static void main(String[] args) {

		String str = "abcdklja";

		Set<Character> myTempHashSet = new HashSet<>();

		char lastChar = 0;

		for (int i = 0; i < str.length(); i++) {
			if (myTempHashSet.add(str.charAt(i)) == false) {
				lastChar = str.charAt(i);
			}
		}

		System.out.println("Last repeating char: " + lastChar);
	}

}

More Related questions...

Show more question and Answers...

JVM

Comments & Discussions