Bahagian ini membentangkan aplikasi yang mengira bilangan kata kunci dalam fail sumber Java. Untuk setiap perkataan dalam fail sumber Java, kita perlu menentukan sama ada perkataan itu ialah kata kunci. Untuk mengendalikan perkara ini dengan cekap, simpan semua kata kunci dalam HashSet dan gunakan kaedah mengandungi untuk menguji sama ada sesuatu perkataan berada dalam set kata kunci. Kod di bawah memberikan program ini.
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<String> 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; } }
Masukkan fail sumber Java: c:Welcome.java
Bilangan kata kunci dalam c:Welcome.java ialah 5
Masukkan fail sumber Java: c:TTT.java
Fail c:TTT.java tidak wujud
Atur cara menggesa pengguna memasukkan nama fail sumber Java (baris 9) dan membaca nama fail (baris 10). Jika fail wujud, kaedah countKeywords digunakan untuk mengira kata kunci dalam fail (baris 15).
Kaedah countKeywords mencipta tatasusunan rentetan untuk kata kunci (baris 26) dan mencipta set cincang daripada tatasusunan ini (baris 28). Ia kemudian membaca setiap perkataan daripada fail dan menguji jika perkataan itu berada dalam set (baris 35). Jika ya, program menambah kiraan sebanyak 1 (baris 36).
Anda boleh menulis semula atur cara untuk menggunakan LinkedHashSet, TreeSet, ArrayList atau LinkedList untuk menyimpan kata kunci. Walau bagaimanapun, menggunakan HashSet adalah yang paling berkesan untuk program ini.
Atas ialah kandungan terperinci Kajian Kes: Mengira Kata Kunci. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!