ユーザーが計算できる関数の作り方について、誰かが私に正しい方向を教えてもらえますか?
以下のように動作させたいのですが:
java Calculate 8*8
the answer = 64
java Calculate 7+(8*2)
the answer = 23
基本的な数学演算子は私が最初に機能させたいものであり、括弧を使用することが次のステップです。
ユーザーが計算できる関数の作り方について、誰かが私に正しい方向を教えてもらえますか?
以下のように動作させたいのですが:
java Calculate 8*8
the answer = 64
java Calculate 7+(8*2)
the answer = 23
基本的な数学演算子は私が最初に機能させたいものであり、括弧を使用することが次のステップです。
あなたは使用することができますScriptEngine
:
public static void main(String[] args) throws Exception {
ScriptEngineManager factory = new ScriptEngineManager();
ScriptEngine engine = factory.getEngineByName("JavaScript");
//pass in the string containing the operation, for example:
double multiplication = (double) engine.eval(args[0]);
}
作業コード:
import javax.script.*;
import java.util.Scanner;
public class Test {
public static void main(String[] args) throws Exception
{
ScriptEngineManager factory = new ScriptEngineManager();
ScriptEngine engine = factory.getEngineByName("JavaScript");
Scanner in = new Scanner(System.in);
System.out.println("Enter your calculation: ");
String userInput = in.next();
//pass in the string containing the operation, for example:
double calculation = (Double) engine.eval(userInput);
System.out.print("The answer = " + calculation);
}
}
ここを見てください:
mainメソッドを使用して、コマンドラインから引数を渡すことができます。
public class Calculate{
public static void main(String... args){
if(args.length == 0){
System.err.println("You forgot to add a formulate to run");
return;
}
String formula = args[0];
// Insert the formula into code from the link mentioned above
}
}