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 dalamHashSetdan gunakan kaedahmengandungiuntuk 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"}; SetkeywordSet = 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 untuk memasukkan nama fail sumber Java (baris 9) dan membaca nama fail (baris 10). Jika fail wujud, kaedahcountKeywordsdigunakan untuk mengira kata kunci dalam fail (baris 15).
KaedahcountKeywordsmencipta 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 program untuk menggunakanLinkedHashSet,TreeSet,ArrayList, atauLinkedListuntuk menyimpan kata kunci. Walau bagaimanapun, menggunakanHashSetadalah 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!