[英]How do I define a list of constants in Java?
當我們想定義一個像pi的常量時,我們可以像public static final float pi = 3.14
。 但是可以說,我想要列出在掃描也會更改的文件后生成的停用詞列表。 我還可以進行“惰性”初始化嗎? 你會怎么做?
您可以使用靜態嵌套類來初始化常量。
這樣做的優點:僅當使用靜態嵌套類時,即使您已經使用了包裝類,也將僅在使用它時加載該靜態嵌套類。
您只需在嵌套類的構造函數中“掃描”包含停用詞的文件,並將它們分配給常量變量,這些常量本身就包含在嵌套類中。
注意:我討厭在處理“復雜”代碼(如掃描某些文件)時使用靜態初始化程序。這將掩蓋潛在的拋出異常(在開發過程中),因為會拋出ExceptionInInitializerError
;) http://docs.oracle的.com / JavaSE的/ 1.5.0 /文檔/ API /爪哇/郎/ ExceptionInInitializerError.html
您描述的模式與Java常量變量不匹配。 您的常數就是數據。
您可以使用地圖( HashMap<String>
)並使用高頻率單詞的值對其進行初始化。
然后,當您從文件/文本/掃描儀中讀取單詞時,您會檢查單詞是否在地圖中並決定要做什么。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.