精华内容
下载资源
问答
  • 常量 常量是指在程序的整个运行过程中值保持不变的量。...常量值又称为字面常量,它是通过数据直接表示的,因此有很多种数据类型,像整型和字符串型等。下面一一介绍这些常量值。 1.整型常量值 Java 的整

    常量

    1. 常量是指在程序的整个运行过程中值保持不变的量。常量在程序运行时是不能被修改的。
    2. 在这里要注意常量和常量值是不同的概念,常量值是常量的具体和直观的表现形式,常量是形式化的表现。
    3. 通常在程序中既可以直接使用常量值,也可以使用常量。
    4. 在 Java 中使用 final 关键字来修饰常量。
    5. 虽然常量名也可以用小写,但为了便于识别,通常使用大写字母表示常量。

    常量值

    常量值又称为字面常量,它是通过数据直接表示的,因此有很多种数据类型,像整型和字符串型等。下面一一介绍这些常量值。

    1.整型常量值

    Java 的整型常量值主要有如下 3 种形式。

    • 十进制数形式:如 54、-67、0。
    • 八进制数形式:Java 中的八进制常数的表示以 0 开头,如 0125 表示十进制数 85,-013 表示十进制数 -11。
    • 十六进制数形式:Java 中的十六进制常数的表示以 0x 或 0X 开头,如 0x100 表示十进制数 256,-0x16 表示十进制数 -22。

    整型(int)常量默认在内存中占 32 位,是具有整数类型的值,当运算过程中所需值超过 32 位长度时,可以把它表示为长整型(long)数值。长整型类型则要在数字后面加 L 或 1, 如 697L,表示一个长整型数,它在内存中占 64 位。

    2.实型常量值

    Java 的实型常量值主要有如下两种形式。

    • 十进制数形式:由数字和小数点组成,且必须有小数点,如 12.34、-98.0。
    • 科学记数法形式:如 1.75e5 或 32&E3,其中 e 或 E 之前必须有数字,且 e 或 E 之后的数字必须为整数。

    Java 实型常量默认在内存中占 64 位,是具有双精度型(double)的值。如果考虑到需要节省运行时的系统资源,而运算时的数据值取值范围并不大且运算精度要求不太高的情况,可以把它表示为单精度型(float)的数值。

    单精度型数值一般要在该常数后面加 F 或 f,如 69.7f,表示一个 float 型实数,它在内存中占 32 位(取决于系统的版本高低)。

    3.布尔型常量值

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

    4.字符型和字符串常量值

    Java 的字符型常量值是用单引号引起来的一个字符,如 ‘e’、E’。需要注意的是,Java 字符串常量值中的单引号和双引号不可混用。双引号用来表示字符串,像 “11”、“d” 等都是表示单个字符的字符串。

    除了以上所述形式的字符常量值之外,Java 还允许使用一种特殊形式的字符常量值来表示一些难以用一般字符表示的字符,这种特殊形式的字符是以"\"开头的字符序列,称为转义字符

    注意:这里表示字符和字符串的单引号和双引号都必须是英语输入环境下输入的符号。

    Java常用转义字符

    转移字符说明
    \n换行 (0x0a)
    \r回车 (0x0d)
    \f换页符(0x0c)
    \b退格 (0x08)
    \0空字符 (0x0)
    \s空格 (0x20)
    \t制表符
    "双引号
    \ ’单引号
    \反斜杠
    \ddd八进制字符 (ddd)
    \uxxxx16进制Unicode字符 (xxxx)

    定义常量

    1. 常量不同于常量值,它可以在程序中用符号来代替常量值使用,因此在使用前必须先定义。

    2. 在声明常量的同时要赋予一个初始值。常量一旦初始化就不可以被修改。它的声明格式为:
      Java 语言使用 final 关键字来定义一个常量,其语法如下所示:

      final dataType variableName = value
      

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

      final double PI = 3.1415926;。
      
    3. 常量有三种类型:静态常量、成员常量和局部常量。
      例:

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

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

      声明成员常量,作用域类似于成员变量,但不能修改。
      声明局部常量,作用域类似于局部变量,但不能修改。

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

      • 在定义常量时就需要对该常量进行初始化。
      • final 关键字不仅可以用来修饰基本数据类型的常量,还可以用来修饰对象的引用或者方法。
      • 为了与变量区别,常量取名一般都用大写字符。
    5. 当常量被设定后,一般情况下不允许再进行更改,如果更改其值将提示错误。

      例如,如下图中定义常量 AGE 并赋予初值,如果更改 AGE 的值,那么在编译时将提示不能重合赋值错误。
      在这里插入图片描述
      上一篇:JAVA java学习(18)——————java数据类型介绍【内置(基本)数据类型和引用数据类型】
      下一篇:JAVA java学习(20)——————java变量的声明和初始化

    展开全文
  • public static final Map<String, String> map = ImmutableMap.<String, String>builder() .put("key1", "value1") .put("key2", "value2") .put("key3", "value3") ...这种方式初始化的Map不可修改
    public static final Map<String, String> map = ImmutableMap.<String, String>builder()
        .put("key1", "value1")
        .put("key2", "value2")
        .put("key3", "value3")
        .build();

    这种方式初始化的Map不可修改

    展开全文
  • Java变量和常量的定义及初始化 一、常量        在程序运行期间,固定不变的量。 分类: (1)字符串常量:凡是用双引号引起来的部分,叫做字符串常量。 例如:"abc","Hello",...

    Java变量和常量的定义及初始化

    一、常量
           在程序运行期间,固定不变的量。

    分类:
    (1)字符串常量:凡是用双引号引起来的部分,叫做字符串常量。

    例如:"abc","Hello","123"
    (两个双引号之间可以为空)
    

    (2)整数常量:直接写上的数字,无小数点。

    例如:100,37,0,-109
    

    (3)浮点数常量:直接写上的数字,有小数点。

    例如:2.5,3.14,0.0
    

    (4)字符常量:凡是用单引号引起来的部分,叫做字符常量。

    例如:'A','B','7','菜'
    (两个单引号之间有且只有一个字符,没有不行,有两个也不行)
    

    (5)布尔常量:只有两种取值。

    例如:truefalse
    

    (6)空常量:null。

    代表没有任何数据
    

    二、变量
           程序运行期间,内容可以发生改变的量。

    (1)创建一个变量并且使用的格式。

    数据类型 变量名; //创建了一个变量
    变量名称 = 数据值; //赋值,将右边的数据值赋值给左边的变量
    

    (2)一步到位的格式。

    数据类型 变量名称 = 数据值;//在创建一个变量的同时,立刻放入指定的数据值
    

    注意事项
    (1)如果创建多个变量,那么变量之间的名称不可以重复。
    (2)对于float和long类型来说,字母后缀F和L不要丢掉。
    (3)如果使用byte或者short类型的变量,那么右侧的数据值不能超过左侧类型的范围。
    (4)没有进行赋值的变量,不能直接使用;一定要赋值之后才能使用。
    (5)变量使用不能超过作用域的范围。
    (6)从定义变量的一行开始,一直到直接所属的大括号结束为止。

    展开全文
  • Java常量与静态常量能不能修改

    千次阅读 2019-09-04 09:55:29
    import java.util.*; // 2019/9/4 public class ConstVarDemo { private final int v1 = 1; private static final int v2 = 2; private final List<Integer> list1 = new LinkedList<>(); p...

    直接上代码

    import java.util.*;
    
    // 2019/9/4
    public class ConstVarDemo {
    	private final int v1 = 1;
    	private static final int v2 = 2;
    
    	private final List<Integer> list1 = new LinkedList<>();
    	private static final List<Integer> list2 = new LinkedList<>();
    
    
    	// 基本类型常量修改
    	// 编译失败
    	public void test1() {
    		// System.out.println(v1);
    
    		// 以下操作错误: 无法为最终变量v1分配值
    		// v1 = 11;	// 修改常量的值
    
    		// System.out.println(v1);
    
    
    		// System.out.println(v2);
    
    		// 以下操作错误: 无法为最终变量v2分配值
    		// v2 = 22;	// 修改静态常量的值
    		// System.out.println(v2);	
    	}
    
    	// 对象引用常量状态进行修改
    	// 编译通过
    	public void test2() {
    		System.out.println(list1.toString());
    		list1.add(1);	// 常量引用
    		System.out.println(list1.toString());
    
    		System.out.println(list2.toString());
    		list2.add(2);	// 静态常量引用
    		System.out.println(list2.toString());
    	}
    	
    	// 改变对象类型常量的引用
    	// 编译失败
    	public void test3() {
    		// System.out.println(list1.toString());
    		// list1 = new ArrayList<>();	// 错误: 无法为最终变量list1分配值
    		// list1.add(1);
    		// System.out.println(list1.toString());
    
    		// System.out.println(list2.toString());
    		// list2 = new ArrayList<>();	// 错误: 无法为最终变量list2分配值
    		// list2.add(2);
    		// System.out.println(list2.toString());
    	}
    
    	public static void main(String[] args) {
    		new ConstVarDemo().test3();
    	}
    }
    

    总结

    • 不管静态常量还是普通常量只要是基本类型就不能在初始化后重新修改其值
    • 对象类型普通常量、静态常量可以在初始化后修改其对象状态,但不可以改变其引用
    展开全文
  • Java常量常量类和常量方法 Java中实现常量类和常量方法是通过关键字final实现。通常分为两种情况 编译时一种不可变的常量 运行时初始化,但不希望被改变的变量 编译时的常量,编译器可以将它的代入用到它的...
  • 例如;int i=?; ?处定义为最大值
  • final 常量数据类型 常量名=常量初始值常量的分类:静态常量、成员常量和局部常量。 public class demo1 { public static final double PI = 3.14;// 静态常量 final int I = 20; // 声明成员常量 public static ...
  • Java 编译期常量

    2020-01-19 14:17:16
    Java 编译期常量 1. 什么是编译期常量  编译期常量,即 compile-time constant。其看似是一个静态,并不一定是由 static 修饰(static 一般只是用于强调只有一份),但强制要求使用 final 进行修饰。编译期常量完整...
  • Java中如何获取枚举常量括号里的

    千次阅读 2020-07-10 15:15:59
    在查询数据时发现如果传入的是枚举常量,而不是括号里的,便无法查询出数据,因为数据库中存放的是。 问题找到了,该如何解决呢?我一开始百度的是 Mybatis 如何处理Java中的枚举数据,参考了好多博客,还写了...
  • Java中修饰常量的关键字“final”

    千次阅读 2020-04-19 15:44:11
    ①使用final声明的变量为常量常量不可以修改 ②使用final声明的类不能有子类,即final修饰的类不能够被继承 ③使用final声明的方法不能被子类所重写 ④与表示抽象类的abstract修饰符不同的是,abstract修饰的类...
  • java中定义常量

    千次阅读 2017-08-15 09:38:18
    Java没有叫 全局变量的东西(有全局变量还叫OO吗?);原因:Java将所有设计都基于对象的基础上。Java的全局变量只能对一个类内部而言。能够在类内的任何地方使用的变量就是全局变量,而只在某个特定的函数或者局部...
  • java的内存分配中,经常听到很多关于常量池的描述,我开始看的时候也是看的很模糊,网上五花八门的说法简直太多了,最后查阅各种资料,终于算是差不多理清了,很多网上说法都有问题,笔者尝试着来区分一下这几个...
  • 这几天在看Java虚拟机方面的知识时,看到了有几种不同常量池的说法,然后我就去CSDN、博客园等上找资料,里面说的内容真是百花齐放,各自争艳,因此,我好好整理了一下,将我自认为对的理解写下来与大家共同探讨: ...
  • java:integer类的常量

    千次阅读 2020-01-26 13:09:19
    integer类的常量相关说明源码运行结果 ...MAX_VALUE:表示int类型可取最大值,为2的31次方减1 MIN_VULUE:表示int类型可取的最小值,为-2的31次方 SIZE:表示用来以二进制补码形式表示int值的位数。...
  • Java中的常量优化机制

    千次阅读 多人点赞 2019-10-19 16:35:57
    常量优化机制:给一个变量赋值,如果等于号的右边是常量的表达式并且没有一个变量,那么就会在编译阶段计算该表达式的结果,然后判断该表达式的结果是否在左边类型所表示范围内,如果在,那么就赋值成功,如果不在,...
  • Java常量Java常量的定义和分类

    千次阅读 2019-06-28 17:13:10
    下面我们来系统地认识一下 Java 中的常量值,以及定义常量的方法。 常量值 常量值又称为字面常量,它是通过数据直接表示的,因此有很多种数据类型,像整型和字符串型等。下面一一介绍这些常量值。 整型常量...
  • Java字符串常量

    千次阅读 多人点赞 2016-03-28 10:55:48
    开篇同学们面试的时候总会被问到字符串常量池... 共享元素模式也就是说:一个系统中如果有多处用到了相同的一个元素,那么我们应该只存储一份此元素,而让所有地方都引用这一个元素Java中String部分就是根据享元模式设
  • java语言中的常量

    千次阅读 2019-03-04 19:56:23
    Java中,常量包括整型常量、浮点数常量、布尔常量、字符常量等。 二、整型常量 整型常量是整数类型的数据,有二进制、八进制、十进制和十六进制4种。 1、二进制表示 由数字0和1 组成的数字序列。在JDK 7以后,...
  • 1、常量(应用) 常量:在程序运行过程中,其不可以发生改变的量。...布尔常量 布尔表示真假,只有两个true和false 空常量 一个特殊的,空值,为null 除空常量外,其他常量均可使用输出语句直接输出
  • hello 呀,今天的内容超简单( ̄︶ ̄)↗ 并且,还有暗藏福利哟~~ 常量 常量 就是常常不变的量,第一...public static final 类型 变量名 = 这样子。 public class Test { public static final double PI ...
  • java的变量和常量以及常量

    千次阅读 2017-10-24 17:39:10
    首先变量名和常量名都是用户自行定义的标志符,遵循先定义后使用的原则,常量和变量的区别是常量之后会不会改变 变量 占据着内存的某一存储区域,该区域有自己的名称和数据类型,该区域的数据可以在同一...
  • Java常量

    万次阅读 多人点赞 2019-09-29 00:09:34
    常量值定义:常量常量值是不同的概念,常量值又称为字面常量,它是通过数据直接表示的。 关系:常量值常量的具体和直观的表现形式,常量是形式化的表现。通常在程序中既可以直接使用常量值,也可以使用常量。 ...
  • JAVA入门,常量&变量

    2020-08-11 10:43:03
    常量值又称为字面常量,它是通过数据直接表示的,因此有很多种数据类型,像整型和字符串型等。 整型常量值 Java 的整型常量值主要有如下 3 种形式。 十进制数形式:如 54、-67、0。 八进制数形式:Java 中的八进制...
  • 目录 1.String常量池位置在哪? 2.String常量池里存的是对象还是引用? 3.String类中的==比较以及...java7之前,方法区位于永久代(PermGen),永久代和堆相互隔离,永久代的大小在启动JVM时可以设置一个固定,...
  • Java的内存分配中,总共3种常量池: 在JDK1.7之前运行时常量池逻辑包含字符串常量池存放在方法区, 此时hotspot虚拟机对方法区的实现为永久代 在JDK1.7 字符串常量池被从方法区拿到了堆中, 这里没有提到运行时...
  • 我们都知道在Java中,String对象有两种初始化方式:一种是直接进行字符串的赋值;另一种是通过new 关键字方式初始化。他们两者之间到底有什么区别呢?字符串常量池又是什么东西呢? String对象的初始化方式 方式一...
  • Java中的变量和常量

    千次阅读 2018-08-04 02:24:18
    在程序中存在大量的数据来代表程序的状态,其中有些数据在程序的运行过程中值会发生改变,有些数据在程序运行过程中值不能发生改变,这些数据在程序中分别被叫做变量和常量。 在实际的程序中,可以根据数据在程序...
  • Java基础之常量

    2021-05-27 10:05:13
    常量值的定义:常量常量值是不同的概念,常量值又称为字面常量,他是通过数据直接表示的。 关系:常量值常量的具体和直观的表现形式,常量是形式上的表现。通常在程序中既可以直接使用常量,也可以直接使用...
  • 关于Java 变量、常量和字面量的解释 先给出一段小代码,如下: int a = 10; //a为变量,10为字面量 final int b = 10; //b为常量,10为字面量 static str = "Hello World"; //str为变量,Hello World为字面量 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 235,403
精华内容 94,161
关键字:

java最大值常量表示

java 订阅