Hy我想繞過製作一個算術表達式解析器的過程,因爲從頭開始構建它有點難度,我也沒有編寫它的知識,我們也不允許使用其他材料。我提出了創建一個將代碼寫入其他類文件的類,從而繞過了字符串到表達式評估過程。如何加載外部類?
public void PrintCode(String filename,String a) {
PrintStream ps = null;
try {
ps = new PrintStream(filename);
} catch (FileNotFoundException ex) {
System.out.println("printWords: File open error: " + filename);
}
ps.println(i);
ps.println(" public int a = "+a + ";\n\n" + " public int geta()\n {\n return a;\n }" +"\n\n}");
ps.close();
}
a是字符串中給定的表達式。文件名用於例如:expression.java。 另一個好奇的是,java可以在代碼中計算這些表達式,但是沒有內置函數來評估給定的字符串類型表達式。我的問題是事實上這個代碼寫入在程序完成後保存,我需要寫入後重新加載類,或者在寫入後加載它,然後執行geta()方法進行計算。 另一件事是以某種方式從代碼重新啓動程序並從此處繼續。 我只是一個菜鳥,我們只學了這個學期的java ..所以如果這裏有什麼非常錯誤的,我很抱歉。並且提前感謝您的幫助!
編輯:我們沒有學習JavaScript,所以我們不能或不允許使用它...對不起。
如果您生成評估表達式的代碼,您將如何處理表達式中的錯誤?生成的代碼甚至不會編譯。 –
我並不需要錯誤處理,這是一個小項目,但如果無法完成,我會退出,如果我沒有其他選擇,就像我之前說過的那樣。 –
會這樣的幫助嗎?: http://stackoverflow.com/questions/2902458/is-it-possible-to-pass-arithmetic-operators-to-a-method-in-java – jtyler