用java中的Scanner读取一个txt文件,文件中都是数字算式,想要算结果,怎样写代码呢?
算式里有一次运算的,也有多次运算的,比如1+1和1+1+1,那么怎样写代码能使程序运行后得到正确算式的结果呢...
算式里有一次运算的,也有多次运算的,比如1+1和1+1+1,那么怎样写代码能使程序运行后得到正确算式的结果呢
展开
展开全部
package image;
import java.util.Scanner;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
public class JS
{
public static void main ( String[] args ) throws Exception
{
Scanner scanner = new Scanner (new File("data2.txt"));
ScriptEngineManager sem = new ScriptEngineManager ();
ScriptEngine se = sem.getEngineByName ("js");
while (scanner.hasNextLine ())
{
String line = scanner.nextLine ().trim ();
if ("".equals (line))
{
break;
}
try
{
System.out.println (se.eval (line));
}
catch (ScriptException e)
{
System.out.println ("不合法的式子,重新输入:");
continue;
}
}
scanner.close ();
}
}
追问
算式是直接从文本中读取的,解决不了的地方在于不是所有的式子都有第三个数,想不到怎样写代码
追答
不是都写出来了么,什么式子都可以计算啊,你试试看啊
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询