Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中是否可以避免使用赋值?_Java_Compiler Construction - Fatal编程技术网

在Java中是否可以避免使用赋值?

在Java中是否可以避免使用赋值?,java,compiler-construction,Java,Compiler Construction,在Java中是否可以避免使用赋值?在lisp中,通过尾部递归、映射以及通过绑定修改数据将可能的赋值限制在迭代中是相当容易的,但Java并没有真正进行任何尾部递归优化。java中有没有不赋值就绑定到数据的方法?您可以编写自己的一组类来模拟Lisp,但不能用java本身来模拟它。将数据绑定到什么?你在说什么标签体?这一点目前还无法回答,因为LISP是一种函数式语言,Java是一种命令式语言,所以设计这种语言并不是为了解决这个问题。另外,Java是否进行尾部递归优化主要取决于JVM实现;如果HotSp

在Java中是否可以避免使用赋值?在lisp中,通过尾部递归、映射以及通过绑定修改数据将可能的赋值限制在迭代中是相当容易的,但Java并没有真正进行任何尾部递归优化。java中有没有不赋值就绑定到数据的方法?

您可以编写自己的一组类来模拟Lisp,但不能用java本身来模拟它。

将数据绑定到什么?你在说什么标签体?这一点目前还无法回答,因为LISP是一种函数式语言,Java是一种命令式语言,所以设计这种语言并不是为了解决这个问题。另外,Java是否进行尾部递归优化主要取决于JVM实现;如果HotSpot等人没有这样做,我会感到惊讶。为什么要在Java中这样做?Scala可以很好地处理不使用赋值的问题,并在JVM上运行。无论您的问题是什么,您都应该能够自己轻松回答:您需要知道的是Java的基本知识。@templatetypedef TCO没有字节码,这是一个阻碍。如果您编写TCO代码,那么可能无法容忍。