> 文档中心 > 什么是Java常量?&常量定义

什么是Java常量?&常量定义

目录

什么是java常量?

1. 整型常量

 2. 浮点数常量

3. 字符常量

4. 字符串常量

5、布尔常量

6、null常量

定义常量

常量三种类型:


什么是java常量?

      java常量就是在程序中固定不变的值,是不能改变的数据。例如数字1、字符“a”、浮点数3.2等。在Java中,常量包括整型常量、浮点数常量、布尔常量、字符常量等。

  下面我们就一起来看看java中的这些常量:

1. 整型常量

  整型常量是整数类型的数据,有二进制、八进制、十进制和十六进制4种表示形式具体表示形式如下。

  二进制:由数字0和1组成的数字序列。在JDK7.0中允许使用字面值来表示二进制数,前面要以0b或0B开头,目的是为了和十进制进行区分,如0b01101100、0B10110101。

  八进制:以0开头并且其后由0~7范围内(包括0和7)的整数组成的数字序列,如0342。

  十进制:由数字0~9范围内(包括0和9)的整数组成的数字序列。如198。

  十六进制:以0x或者0X开头并且其后由0~9、A~F(包括0和9、A和F)组成的数字序列,如0x25AF。

  需要注意的是,在程序中为了标明不同的进制,数据都有特定的标识,八进制必须以0开头,如0711,0123;十六进制必须以0x或0X开头,如0xaf3、0Xff;整数以十进制表示时,第一位不能是0,0本身除外。例如十进制的127,用二进制表示为011111八进制表示为017,用十六进制表示为0x7F或者0X7F。

 2. 浮点数常量

  浮点数常量就是在数学中用到的小数,分为foat单精度浮点数double双精度浮点数两种类型。其中,单精度浮点数后面以F或f结尾,而双精度浮点数则以D或d结尾。当然,在使用浮点数时也可以在结尾处不加任何的后缀,此时虚拟机会默认为double双精度浮点数。浮点数常量还可以通过指数形式来表示。具体示例如下:

 2e3f 3.6d 0f 3.84d 5.022e+23f

3. 字符常量

  字符常量用于表示一个字符,一个字符常量要用一对英文半角格式的单引’’号引起来,它可以是英文字母、数字、标点符号以及由转义序列来表示的特殊字符。具体示例如下:

‘a’ ‘1’ ‘&’ ‘\r’ ‘\u0000’

  上面的示例中,’\u00’表示一个空白字符,即在单引号之间没有任何字符。之所以能这样表示,是因为Java采用的是Unicode字符集,Unicode字符以\u开头,空白字符在Unicode码表中对应的值为’\u0000’。

4. 字符串常量

  字符串常量用于表示一串连续的字符,一个字符串常量要用一对英文半角格式的双引号””引起来,具体示例如下:

“HelloWorld" “123" "We come \n XXX" "”

  一个字符串可以包含一个字符或者多个字符,也可以不包括任何字符,即长度为零

5、布尔常量

  Java 的布尔型常量只有两个值,即 false(假)和 true(真)。

6、null常量

  null常量只有一个值null,表示对象的引用为空。

定义常量

常量不同于常量值,它可以在程序中用符号来代替常量值使用,因此在使用前必须先定义。常量与变量(在《Java变量的声明和初始化》一节中讲解)类似也需要初始化,即在声明常量的同时要赋予一个初始值。常量一旦初始化就不可以被修改。它的声明格式为:

Java 语言使用 final 关键字来定义一个常量,其语法如下所示:

final dataType variableName = value

其中,final 是定义常量的关键字dataType 指明常量的数据类型variableName 是变量的名称value初始值

final 关键字表示最终的,它可以修改很多元素,修饰变量就变成了常量。例如,以下语句使用 final 关键字声明常量。

public class HelloWorld {    // 静态常量    public static final double PI = 3.14;    // 声明成员常量    final int y = 10;    public static void main(String[] args) { // 声明局部常量 final double x = 3.3;    }}

常量三种类型:

常量有三种类型:静态常量成员常量局部常量

代码第 3 行的是声明静态常量,使用在 final 之前 public static 修饰。public static 修饰的常量作用域是全局的,不需要创建对象就可以访问它,在类外部访问形式为 HelloWorld. PI。这种常量在编程中使用很多。

代码第 5 行声明成员常量,作用域类似于成员变量,但不能修改。代码第 9 行声明局部常量,作用域类似于局部变量,但不能修改。

在定义常量时,需要注意如下内容:

  • 在定义常量时就需要对该常量进行初始化。
  • final 关键字不仅可以用来修饰基本数据类型的常量,还可以用来修饰对象的引用或者方法。
  • 为了与变量区别,常量取名一般都用大写字符。

当常量被设定后,一般情况下不允许再进行更改,如果更改其值将提示错误。例如,如下图中定义常量 AGE 并赋予初值,如果更改 AGE 的值,那么在编译时将提示不能重合赋值错误。