常数是一个变量,一旦赋值就不能更改其值。Java没有对常量的内置支持。
常量可以使我们的程序更容易被他人阅读和理解。此外,JVM和我们的应用程序还会缓存一个常量,因此使用常量可以提高性能。
要将变量定义为常量,我们只需要在变量声明的前面添加关键字“ final ”。
final float pi = 3.14f;
上面的语句将float变量“ pi”声明为一个值为3.14f的常量。我们无法在程序中的任何时间更改“ pi”的值。稍后,如果我们尝试使用“ pi = 5.25f”之类的语句来执行此操作,则Java会在编译时本身抛出错误。我们不必在初始化本身期间分配常量的值。
在下面的示例中,只要在声明变量时添加关键字“ final ” ,就可以将原始数据类型(字节,短型,整型,长型,浮点型,双精度型,布尔型和字符型)定义为常量。
public class ConstantsDemo { public static void main(String args[]) { final byte var1 = 2; final byte var2; var2 = -3; final short var3 = 32; final short var4; var4 = -22; final int var5 = 100; final int var6; var6 = -112; final long var7 = 20000; final long var8; var8 = -11223; final float var9 = 21.23f; final float var10; var10 = -121.23f; final double var11 = 20000.3223; final double var12; var12 = -11223.222; final boolean var13 = true; final boolean var14; var14 = false; final char var15 = 'e'; final char var16; var16 = 't'; //显示所有变量的值 System.out.println("value of var1 : "+var1); System.out.println("value of var2 : "+var2); System.out.println("value of var3 : "+var3); System.out.println("value of var4 : "+var4); System.out.println("value of var5 : "+var5); System.out.println("value of var6 : "+var6); System.out.println("value of var7 : "+var7); System.out.println("value of var8 : "+var8); System.out.println("value of var9 : "+var9); System.out.println("value of var10 : "+var10); System.out.println("value of var11 : "+var11); System.out.println("value of var12 : "+var12); System.out.println("value of var13 : "+var13); System.out.println("value of var14 : "+var14); System.out.println("value of var15 : "+var15); System.out.println("value of var16 : "+var16); } }
输出结果
value of var1 : 2 value of var2 : -3 value of var3 : 32 value of var4 : -22 value of var5 : 100 value of var6 : -112 value of var7 : 20000 value of var8 : -11223 value of var9 : 21.23 value of var10 : -121.23 value of var11 : 20000.3223 value of var12 : -11223.222 value of var13 : true value of var14 : false value of var15 : e value of var16 : t