Java程序查找的字符流的第一个非重复的字符
要从字符流中找到第一个非重复字符,Java代码如下-
示例
import java.util.ArrayList;
import java.util.List;
public class Demo{
final static int max_chars = 256;
static void non_repeating_char(){
List<Character> my_list = new ArrayList<Character>();
boolean[] repeat = new boolean[max_chars];
String my_str = "Thisisasample";
for (int i = 0; i < my_str.length(); i++){
char x = my_str.charAt(i);
if (!repeat[x]){
if (!(my_list.contains(x))){
my_list.add(x);
}
else{
my_list.remove((Character)x);
repeat[x] = true;
}
}
if (my_list.size() != 0){
System.out.print("字符串的第一个非重复字符是 ");
System.out.println(my_list.get(0));
}
}
}
public static void main(String[] args){
non_repeating_char();
}
}输出结果
字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T
名为Demo的类包含一个名为“non_repeating_char的函数。创建一个列表并定义一个字符串。重复此字符串,检查每个字符,并将其计数以布尔变量的形式存储在名为“repeat”的数组中。如果重复,则该值为true,否则为false。在主函数中,将调用该函数,并在控制台上显示相关消息。