Java Online Compiler
Example: FindFirstNonRepeatingStreamDirect in Java
C
C++
C#
Java
Python
PHP
Main.java
STDIN
Run
// FindFirstNonRepeatingStreamDirect import java.util.Optional; public class Main { public static Optional<Character> findFirstNonRepeatingStreamDirect(String s) { if (s == null || s.isEmpty()) { return Optional.empty(); } // Step 1: Stream characters of the string return s.chars() .mapToObj(c -> (char) c) // Convert int stream to Character stream .filter(c -> s.indexOf(c) == s.lastIndexOf(c)) // Filter for non-repeating characters .findFirst(); // Get the first one } public static void main(String[] args) { System.out.println("\n--- Stream API with Direct Index Check Approach ---"); System.out.println("stress -> " + findFirstNonRepeatingStreamDirect("stress").orElse(null)); // t System.out.println("aabbc -> " + findFirstNonRepeatingStreamDirect("aabbc").orElse(null)); // c System.out.println("aabb -> " + findFirstNonRepeatingStreamDirect("aabb").orElse(null)); // null System.out.println("java -> " + findFirstNonRepeatingStreamDirect("java").orElse(null)); // j System.out.println(" -> " + findFirstNonRepeatingStreamDirect("").orElse(null)); // null System.out.println("zzzaac -> " + findFirstNonRepeatingStreamDirect("zzzaac").orElse(null)); // c } }
Output
Clear
ADVERTISEMENTS