什么是java编译器中的常量折叠?
可能重复:
在java中有任何称为“常量折叠”的概念吗?
嗨,我遇到过Java编译器使用称为Constant Folding的东西。这是什么? 它是如何影响的?
常量折叠是编译器查找包含编译时常量的表达式并将其替换为有效删除冗余运行时计算的结果的位置。
// code static final int a = 2; int b = 30 * a; // folding would create int b = 60;
常量折叠是在编译时简化常量表达式的过程。 常量表达式中的术语通常是简单的文字,例如整数2,但也可以是其值永远不会被修改的变量,或者显式标记为常量的变量
这很好地解释了http://en.wikipedia.org/wiki/Constant_folding