首页 > 编程笔记

Java变量和常量(入门必读)

本节介绍 Java 语言中两个重要的概念:变量和常量。

例如,某天美元兑换人民币的汇率为 6.7295、某天 92 号汽油的价格为每升 6.95 元等,这些可以被改变数值的量称作变量;而 1 分钟等于 60秒,一年有 12 个月等,这些不可以被更改数值的量称作常量。

Java变量

1) 变量的声明

声明指的是变量被创建后,没有被赋予具体数值的过程。那么,变量应该如何声明呢?

变量是用来存储数值的,但计算机并不聪明,无法自动分配指定大小的内存空间来存储这些数值。这时,需要借助 Java 语言提供的数据类型予以实现。

声明变量的语法如下。
数据类型 变量标识符;
例如,某电商平台手机壳的售价为 49.9 元,现声明表示手机壳售价的变量 shellPrice。

因为变量 shellPrice 的值是一个小数,而在 Java 语言中,默认用表示浮点类型的 double 声明值为小数的变量,所以变量 shellPrice 的数据类型应为 double。因此,声明变量 shellPrice 的代码为:
double shellPrice;

2) 为变量赋值

声明变量后,要为变量赋值,为变量赋值的过程称作定义、初始化或者赋初值。

为变量赋值的语法如下。
数据类型 变量标识符 = 变量值;
例如,为上文的变量 shellPrice 赋值,值为 49.9,代码如下:
double shellPrice = 49.9;
注意,选择正确的数据类型是至关重要的,否则 Eclipse 会出现下图所示的错误提示:


图 1 数据类型选择不当

3) 同时声明多个变量

声明变量时,对于相同数据类型的变量,可以同时声明多个。

同时声明多个变量的语法如下。
数据类型 变量标识符1, 变量标识符2, …, 变量标识符n;
例如,某超市特价销售 3 种水果,即苹果4.98元/斤、橘子3.98元/斤和香蕉2.98元/斤。同时声明表示苹果价格的变量 applePrice、表示橘子价格的变量 orangePrice 和表示香蕉价格的变量 bananaPrice。因为苹果价格、橘子价格和香蕉价格都是小数,所以这 3 个变量的数据类型均为 double,代码如下。
double applePrice, orangePrice, bananaPrice;
声明变量 applePrice、orangePrice 和 bananaPrice 后,要分别为这 3 个变量赋值,进而表示这 3 种特价水果的价格。赋值的方式有以下两种:
① 声明时直接赋值,代码如下。
double applePrice = 4.98, orangePrice = 3.98, bananaPrice = 2.98;
② 先声明,再赋值,代码如下。
double applePrice, orangePrice, bananaPrice;
applePrice = 4.98;
orangePrice = 3.98;
bananaPrice = 2.98;
注意,多个变量在“先声明,再赋值”的过程中,多个赋值语句不能使用逗号间隔开且写在同一行,否则 Eclipse 会出现下图所示的错误提示。


图 2 多个赋值语句不能使用逗号间隔开且写在同一行

Java常量

如果一个值是确定且不会被改变的,那么用常量来存储这个值。例如,1 分钟等于 60 秒,60 就可以被设置为常量;而 2 月有多少天是不固定的,非闰年时有 28 天,闰年时有 29 天,这种会根据条件变化的值不可以被设置为常量。

1) 常量的声明

如果要声明一个常量,那么需借助关键字 final。关键字 final 被译为“最终的”,当修饰常量时,就相当于标记这个常量的值不允许被改变。

声明常量的语法如下。
final 数据类型 常量标识符;
例如,声明一个表示 1 分钟等于多少秒的常量 SECONDS,代码如下。
final int SECONDS;

2) 为常量赋值

声明常量时,通常要直接为其赋值,为常量赋值的语法如下。
final 数据类型 常量标识符 = 常量值;
例如,为上文中的常量 SECONDS 赋值,值为 60,代码如下。
final int SECONDS = 60;

3) 同时声明多个常量

如果需要同时声明多个同一数据类型的常量,可以采用如下格式。
final 数据类型 常量标识符1 = 常量值1, 常量标识符2 = 常量值2, …, 常量标识符n = 常量值n;
例如,声明多个常量,表示“1天有24小时,有1440分钟,有86400秒”,代码如下。
final int HOURS = 24, MINUTES = 1440, SECONDS = 86400;
在声明常量时,如果已经对其赋值了,那么常量的值不允许再被修改,否则 Eclipse 会出现下图所示的错误提示。


图 3 常量的值不允许再被修改

推荐阅读