예를 들어 "3+4"라는 문자열 그 자체를 받았을 때(수식 그 자체)
이걸 그대로 계산할 수 있는 방법이 없을까?(연산자를 자르는 등 복잡한 과정을 거치지 않고!)
자바스크립트 엔진을 사용하면 된다!(정말 획기적인 방법이다!)
다음과 같이 처리하면 된다!("3+4"와 같은 단순한 연산이 아니라 훨씬 복잡한 연산에서 빛을 발할 수 있다! 예를 들어 "(1+2)*3"과 같은 경우!)
1
2
3
4
5
6
7
8
9
10
11
12
13
14 |
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
public class Test d{
public static void main(String[] args) throws ScriptException {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("JavaScript");
Object result = null;
result = engine.eval("3 + 4");
System.out.println(result); // 7이 출력됨
}
} |
cs |
'IT노트(구) > Java' 카테고리의 다른 글
자바 BufferdReader 간단한 예제 (0) | 2015.12.07 |
---|---|
jsp에서 forward시키는 방법(RequestDispatcher 이용) (0) | 2015.12.07 |
자바에서 char 배열을 String으로 변환하는 방법 (0) | 2015.12.03 |
자바에서 ArrayList 중복 제거하는 방법(HashSet 이용) (0) | 2015.11.29 |
The code of method _jspService() is exceeding the 65535 bytes limit 에러가 날 때 (0) | 2015.11.29 |