要在Java中找到字符串中第一个重复的单词,代码如下-
import java.util.*; public class Demo{ static char repeat_first(char my_str[]){ HashSet<Character> my_hash = new HashSet<>(); for (int i=0; i<=my_str.length-1; i++){ char c = my_str[i]; if (my_hash.contains(c)) return c; else my_hash.add(c); } return '\0'; } public static void main (String[] args){ String my_str = "thisisasampleonlysample"; char[] my_arr = my_str.toCharArray(); System.out.println("The first repeating character in the string is :"); System.out.println(repeat_first(my_arr)); } }
输出结果
The first repeating character in the string is : I
名为Demo的类包含一个名为“ repeat_first”的函数,该函数将字符串作为参数。 它创建一个新的哈希集并遍历字符串,并检查字符串中的字符是否等于特定字符。
如果是,则返回该字符,否则将把该字符添加到哈希集中。这样,第二次找到一个单词时,它将被添加到哈希集中,并成为第一个不止一次出现在字符串中的单词。在main函数中,定义了字符串和字符数组。在这个字符数组上调用repeat_first函数。相关数组显示在控制台上。