Computer >> Máy Tính >  >> Lập trình >> Java

Chương trình Java để Tìm ký tự không lặp lại đầu tiên từ một luồng ký tự

Để tìm ký tự không lặp lại đầu tiên từ một luồng ký tự, mã Java như sau -

Ví dụ

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("The first non-repeating character of the string is ");
            System.out.println(my_list.get(0));
         }
      }
   }
   public static void main(String[] args){
      non_repeating_char();
   }
}

Đầu ra

The first non-repeating character of the string is T
The first non-repeating character of the string is T
The first non-repeating character of the string is T
The first non-repeating character of the string is T
The first non-repeating character of the string is T
The first non-repeating character of the string is T
The first non-repeating character of the string is T
The first non-repeating character of the string is T
The first non-repeating character of the string is T
The first non-repeating character of the string is T
The first non-repeating character of the string is T
The first non-repeating character of the string is T
The first non-repeating character of the string is T

Một lớp có tên Demo chứa một hàm có tên là hàm ‘non_repeating_char’. Một danh sách được tạo và một chuỗi được xác định. Chuỗi này được lặp lại và mọi ký tự đều được kiểm tra và số lượng của nó được lưu trữ dưới dạng một biến Boolean, trong một mảng có tên là 'repeat'. Giá trị sẽ là true nếu nó được lặp lại và false nếu ngược lại. Trong hàm chính, hàm được gọi và thông báo liên quan được hiển thị trên bảng điều khiển.