"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > دراسة الحالة: عد الكلمات الرئيسية

دراسة الحالة: عد الكلمات الرئيسية

تم النشر بتاريخ 2024-07-31
تصفح:536

Case Study: Counting Keywords

يقدم هذا القسم تطبيقًا يقوم بحساب عدد الكلمات الأساسية في ملف Java المصدر. لكل كلمة في ملف مصدر Java، نحتاج إلى تحديد ما إذا كانت الكلمة هي كلمة رئيسية. للتعامل مع هذا بكفاءة، قم بتخزين جميع الكلمات الرئيسية في HashSet واستخدم طريقة يحتوي على لاختبار ما إذا كانت هناك كلمة في مجموعة الكلمات الرئيسية. الكود أدناه يعطي هذا البرنامج.

package demo;
import java.util.*;
import java.io.*;

public class CountKeywords {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("Enter a Java source file: ");
        String filename = input.nextLine();

        File file = new File(filename);
        if(file.exists()) {
            try {
                System.out.println("The number of keywords in "   filename   " is "   countKeywords(file));
            } catch (Exception e) {
                System.out.println("An error occurred while counting keywords: "   e.getMessage());
            }
        } else {
            System.out.println("File "   filename   " does not exist");
        }
    }

    public static int countKeywords(File file) throws Exception {
        // Array of all Java keywords   true, false and null
        String[] keywordString = {"abstract", "assert", "boolean", "break", "byte", "case", "catch", "char", "class", "const", "continue", "default", "do", "double", "else", "enum", "extends", "for", "final", "finally", "float", "goto", "if", "implements", "import", "instanceof", "int", "interface", "long", "native", "new", "package", "private", "protected", "public", "return", "short", "static", "strictfp", "super", "switch", "synchronized", "this", "throw", "throws", "transient", "try", "void", "volatile", "while", "true", "false", "null"};

        Set keywordSet = new HashSet(Arrays.asList(keywordString));
        int count = 0;

        Scanner input = new Scanner(file);

        while(input.hasNext()) {
            String word = input.next();
            if(keywordSet.contains(word))
                count  ;
        }

        return count;
    }

}

أدخل ملف Java المصدر: c:\Welcome.java
عدد الكلمات الرئيسية في c:\Welcome.java هو 5

أدخل ملف Java المصدر: c:\TTT.java
الملف c:\TTT.java غير موجود

يطالب البرنامج المستخدم بإدخال اسم ملف مصدر Java (السطر 9) ويقرأ اسم الملف (السطر 10). إذا كان الملف موجودًا، فسيتم استدعاء الأسلوب countKeywords لحساب الكلمات الأساسية في الملف (السطر 15).

تقوم طريقة countKeywords بإنشاء مصفوفة من السلاسل للكلمات الرئيسية (السطر 26) وإنشاء مجموعة تجزئة من هذه المصفوفة (السطر 28). ثم يقرأ كل كلمة من الملف ويختبر ما إذا كانت الكلمة موجودة في المجموعة (السطر 35). إذا كان الأمر كذلك، فإن البرنامج يزيد العدد بمقدار 1 (السطر 36).

يمكنك إعادة كتابة البرنامج لاستخدام LinkedHashSet، TreeSet، ArrayList، أو LinkedList لتخزين الكلمات الرئيسية. ومع ذلك، فإن استخدام HashSet هو الأكثر كفاءة لهذا البرنامج.

بيان الافراج تم نشر هذه المقالة على: https://dev.to/paulike/case-study-counting-keywords-4kfa?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3