使用访问说明符在java中生成高阶函数

时间:2017-06-01 07:37:27

标签: javascript java

我找到了一种方法,因为java 8支持更高阶函数:Lambda expressions and higher-order functions

就像在javascript中一样:

funcArr = ["abc","def"];
funcArr.forEach(function(x){
   eval(x+"=function(){console.log('new func');}");
}

现在我的查询是如果我使用上面答案中提到的这种方法,我可以为创建的函数指定访问修饰符

1 个答案:

答案 0 :(得分:0)

也许这会有用。

   Arrays.asList("abc", "def").forEach(func -> {
            try {
                new ScriptEngineManager().getEngineByName("js").eval(func + "=function(){console.log('new func');}");
            } catch (ScriptException e) {
                //catch
            }
        });