java 中的常量

简介: java 中的常量

常量


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


常量的分类:

1.字符串常量:凡是用双引号引起来的部分,叫做字符串常量。例如:“abc”、“Hello”、“123”。

2.整数常量:直接写上数字,没有小数点。例如:100,200,0,-250。

3.浮点数常量:直接写上的数字,有小数点。例如:2.5、-3.14、0.0。

4.字符常量:凡是用单引号引起来的单个字符,就是字符常量。例如:‘A’、‘b’、‘9’、‘中’。

5.布尔常量:只有两种取值。true、false。

6.空常量:null。代表没有任何数据。


注意:

1.两个单引号中间必须有且仅有一个字符,没有不行。

2.两个单引号中间必须有且仅有一个字符,有两个不行。

3.空常量不能直接用来打印输出。


例如:System.out.println(’’);这是错误的。

例如:Syetem.out.println(‘AB’);这是错误的。

例如:System.out.println(nulll);这是错误的。


数据类型


数据类型分为基本数据类型和引用数据类型。


基本数据类型:四类八种。

   整数型    byte short int long

   浮点型    float double

   字符型    char

   布尔型    boolean


简要提一下引用数据类型:字符串、数组、类、接口、Lambda。


如下图所示。


取值范围与内存占用不相关,就比如说图中的long占用8个字节而单精度浮点数float只占用四个字节,但是float的取值范围却比long的取值范围大很多,这是因为float采用的是科学计数法计算省空间。


注意事项:


1.字符串不是基本类型,而是引用类型。

2.浮点型可能只是一个近似值,并非精确值。

3.数据范围与字节数不一定相关。例如:float数据范围比long更加广泛,但是float是4字节,long是8字节。

4.浮点数当中默认类型是double。如果一定要使用float类型,需要加上一个后缀F。

如果是整数,默认为int类型,如果一定要使用long类型,需要加上一个后缀L。大小写后缀都可以,推荐使用大写字母后缀。

例如:System.out.println(100L);


变量


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


创建一个变量并且使用的格式:数据类型 变量名称; 变量名称 = 数据值;


一步到位的格式:数据类型 变量名称 = 数据值;//在创建一个变量的同时,立刻放入指定的数据值。


用long 和 float时要加后缀。例如:long num = 30000000000L; float num = 2.5F;


数据类型转换


当数据类型不一样时,将会发生数据类型转换。


数据类型转换分为两类:


 自动类型转换(隐式)

   1.特点:代码不需要进行特殊处理,自动完成。

   2.规则:数据范围从小到大。


 强制类型转换(显式)

   1.特点:代码需要进行特殊的格式处理,不能自动完成。

   2.格式:范围小的数据类型 范围小的变量名 = (范围小的类型)原本范围大的数据; 例如:int num = (int) 100L;


注意事项:


   1.强制类型转换一般不推荐使用,因为有可能发生精度损失、数据溢出。如图。

20190427122256407.jpg


 2.byte/short/char这三种类型都可以发生数学运算,例如加法“+”.

   3.byte/short/char这三种类型在运算的时候,都会被首先提升为int类型,然后在计算。

   4.boolean类型不能发生数据类型转换


数据溢出:数据范围大的数据类型转换为数据范围小的数据类型,装不下,数据溢出了。

精度损失:就是把有一部分数据的精度给舍掉了。例如:int num = (int) 3.99;输出结果为3。


例如:char ch = ‘A’;//这是一个字符变量,里面是大写字母A

          System.out.println(ch+1);//66,也就是大写字母A被当成65处理。

计算机的底层会用一个数字(二进制)来代表字符A,就是65。

一旦char类型进行了数学运算,那么字符就会按照一定的规则翻译成为一个数字。


例如:


byte num1 = 40;
byte num2 = 50;
//byte + byte => int + int => int
byte result1 = num1 + num2;
System.out.println(result1);
编译器报错,因为byte+byte运算时默认会提升为int+int 应该用int去接收。
int result1 = num1 + num2;


byte+short也是一样。举一个正确的例子:


short num1 = 60;
byte num2 = 40;
//byte + short => int + int => int
//int强制类型转换为short:注意必须保证逻辑上真实大小本来就没有超过short范围,否则会发生数据溢出
short result = (short) (num1 + num2);
System.out.println(result);//100

ASCII码表


数字和字符的对照关系表(编码表):


ASCII码表:American Standard Code for Information Interchange,美国信息交换标准代码。

Unicode码表:万国码。也是数字和符号的对照关系,开头0-127部分和ASCII完全一样,但是从128开始包含有更多的字符。

20190427122224889.png


记住三个:48代表0,65代表A,97代表a。其余的查表即可。


例如:


char zifu1 = ‘1’;
System.out.println(zifu1 + 0);//49
char zifu2 = ‘A’;
char zifu3 = ‘c’;
int num = zifu3;
//左侧是int类型,右边是char类型,char => int ,确实是从小到大发生了自动类型转换
System.out.println(num);//99
char zifu4 = ‘中’;
System.out.println(zifu4 + 0);//20013
目录
相关文章
|
6月前
|
存储 Java 开发者
Java 里的“变形金刚”:变量与常量的前世今生!
【6月更文挑战第14天】Java 中的变量和常量是编程基础,变量是可变的容器,用于存储不同类型的数据,如示例中的 `age`;常量(如 `MAX_VALUE`)是固定不变的值,用 `final` 定义。理解两者及其作用至关重要,它们确保程序的稳定性和准确性。在实际编程中,合理使用变量和常量可以提高代码可读性和可维护性。它们是构建程序的基础,对新手和资深开发者都极其重要。
34 4
|
26天前
|
Java 程序员 容器
Java中的变量和常量:数据的‘小盒子’和‘铁盒子’有啥不一样?
在Java中,变量是一个可以随时改变的数据容器,类似于一个可以反复打开的小盒子。定义变量时需指定数据类型和名称。例如:`int age = 25;` 表示定义一个整数类型的变量 `age`,初始值为25。 常量则是不可改变的数据容器,类似于一个锁死的铁盒子,定义时使用 `final` 关键字。例如:`final int MAX_SPEED = 120;` 表示定义一个名为 `MAX_SPEED` 的常量,值为120,且不能修改。 变量和常量的主要区别在于变量的数据可以随时修改,而常量的数据一旦确定就不能改变。常量主要用于防止意外修改、提高代码可读性和便于维护。
|
2月前
|
安全 Java
java BigDecimal 的赋值一个常量
在 Java 中,`BigDecimal` 是一个用于精确计算的类,特别适合处理需要高精度和小数点运算的场景。如果你需要给 `BigDecimal` 赋值一个常量,可以使用其静态方法 `valueOf` 或者直接通过字符串构造函数。 以下是几种常见的方法来给 `BigDecimal` 赋值一个常量: ### 使用 `BigDecimal.valueOf` 这是推荐的方式,因为它可以避免潜在的精度问题。 ```java import java.math.BigDecimal; public class BigDecimalExample { public static void
|
6月前
|
存储 小程序 Java
打破传统,Java 变量与常量让你重新认识编程的魅力!
【6月更文挑战第14天】Java编程中的变量与常量赋予程序灵活性和动态性。变量如魔法盒子,其值可变,提供程序的适应性;常量则如灯塔,值恒定,确保稳定性。两者结合构建复杂程序,变量用于处理数据,常量定义规则。在项目中,规范管理变量和常量能提升代码可读性和维护性。无论是小游戏还是复杂系统,它们都是不可或缺的工具,激发编程的无限可能。
29 1
|
6月前
|
存储 Java 程序员
揭秘 Java 世界:从“小白”到“大神”,变量与常量的奇妙之旅!
【6月更文挑战第14天】Java编程基础中,变量与常量是构建程序的关键。变量像可变的盒子,存储变化的数据,如`int age = 25;`。常量(如`final double PI = 3.14159;`)是不可变值,用`final`定义。通过示例展示了变量可修改,常量不可改的特性。理解并熟练运用它们对于编程至关重要,伴随程序员从初学到精通的全过程。
29 1
|
7月前
|
安全 Java 编译器
【Java开发指南 | 第四篇】Java常量、自动类型转换、修饰符
【Java开发指南 | 第四篇】Java常量、自动类型转换、修饰符
53 4
|
3月前
|
Java
java小工具util系列4:基础工具代码(Msg、PageResult、Response、常量、枚举)
java小工具util系列4:基础工具代码(Msg、PageResult、Response、常量、枚举)
86 5
|
4月前
|
算法 Java 测试技术
Java零基础教学(15):Java常量详解
【8月更文挑战第15天】Java零基础教学篇,手把手实践教学!
66 5
|
4月前
|
存储 Java 测试技术
Java零基础(16) - Java常量
【8月更文挑战第16天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
49 4
|
6月前
|
Java
Java 基础深度解析:变量与常量的声明、赋值与初始化的权威指南
【6月更文挑战第14天】Java编程中的变量和常量是基础关键。声明变量如`int age;`,赋值与初始化可在声明时或后续代码中完成。常量用`final`修饰,如`public static final double PI = 3.14159;`,且只能赋值一次。变量命名应具描述性,常量值设定后尽量不变,注重代码的可读性和可维护性。熟练掌握这些将有助于编写高质量Java程序。
85 4