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