Java 变量常量的数据类型及各种类型书写语法规则

一. Java数据类型概览
在这里插入图片描述
二. Java中八大基本数据类型
在这里插入图片描述
三. Java中八大基本数据类型的转换

(1)boolean不可以转换为其他的数据类型;

(2)整数型,浮点类型,字符型是可以相互转换的,转换时遵守下面的原则:

a) 容量小的类型自动转换为大的类型,数据类型按容量大小排序为:

byte, short, char < int < long <float < double

b) byte, short, char 三种类型间不会相互转换,他们三者在计算时,首先会转换为int类型;

c) 容量大的类型在转换为小的类型的时候,必须加上强制转换符,此时可能造成精度降低或者溢出问题;

d) 有多种数据类型混合计算的时候,系统首先自动转换为容量最大的那个类型再来继续计算;

e) 默认的浮点数类型是double,如:1.2; 默认的整数类型是int类型,如:1;

四. 关于字符串问题

记得我上学那会,还把String类型当做一个基本数据类型,现在想想真是可笑! String是java.lang.String包下的一个类,也就是引用类型中的类类型(说白了它就是一个类),
在Java中java.lang.* 下的所有包都是自动引入的,所以同学们可要注意了!

五、java变量常量数据类型及各种类型书写语法规则
变量
常量
数据类型
各种类型书写语法规则
java数据类型有哪些?(建议背,出去笔试面试几乎必考)

原生数据类型(4类8种)
引用数据类型
java的数据类型=原生+引用
原生类型(primitive),也被称为基础类型
引用类型(reference),也被称为对象类型
为什么要分为两大类:
两种数据类型的数据在内存中的存储方式不同,我们的内存分为堆栈,原生类型它在栈中,而我们的引用类型它在堆和栈里面都有,开辟空间要通过new关键字来开辟空间,所以说原生类型和引用类型它们开辟的内存空间是不一样的。

原生类型细分(4类八种):

类型 内容

整数型 byte、short、int、long
布尔类 boolean
浮点数类 float、double
字符类 char

整数类:

类型 所占2进制位 表示数据范围 备注
byte 8 -2^7 ~ 2^7-1 -128~127
short 16 -2^15 ~ 2^15-1 -32768~32767
int 32 -2^31 ~ 2^31-1 -2147483648 ~2147483647
long 64 -2^63 ~ 2^63-1 这个值也想看你在和我开玩笑
浮点类型:

类型 所占2进制 表示数据范围 备注
float 32 1.4E-45 ~ 3.4E38 单精度
double 64 4.94E-324 ~ 1.79E308 双精度
布尔类:取值范围就两个值:true false

字符类:就一种:char

类型 所占2进制位 表示数据范围
char 16(无符号位) 0~65535


引用类型:
除去8种原生类型,其他类型都属于引用类型。我们常用的字符串String和我们经常使用的数组Array都是引用数据类型。我们所有的类,接口,数组这些都是属于引用数据类型。


六. 什么是变量和常量?

我们可以形象的说变量和常量就相当于存放数据的盒子(容器)。
变量中盒子的数据值是可变,声明后可以多次赋值,而常量与变量不同的则是它的值一旦被声明赋值后续不能再次赋值,是不可变的。我们在声明的时候,相当于创建一个盒子,然后把值放入到这个盒子里进行赋值。
例如:我们的身份证号码它就是常量,我们的员工编号,年龄就是个变量。

变量是怎么进行声明赋值的?

数据类型 变量名称 赋值
byte a 1
int b 2
int c b
… … …
声明+赋值:数据类型 变量名=值(或同类型的变量)
由上可以得到:

byte a = 1;
int b = 2;
int c =b;
相当于,我给byte类型的a赋值为1,int 类型的b赋值为2,int类型的c 赋值为b。int b = 2;int c =b;这句话又可以堪称我们创建一个int类型的容器为c,把int b的值放进c容器里面,所以int c =2;


常量是怎么进行声明赋值的?
说到常量,我们这里就要认识一个关键字final,final关键字就限制了这个变量是不可变的,也就是我们的常量。
常量的定义=final+【变量的定义】
final 数据类型 变量名称 = 值(或同类型的变量)

示例如下:
final byte a = 10; 常量
final int b = 20; 常量
final int c =30; 常量
i=40;(错误,常量不能被再次赋值)

变量和常量的区别解析:

变量可以多次赋值,常量只能赋值1次;
由于常量是不可变的,所以我们在写程序的时候,多定义常量可以提高程序的运行效率。
在这里插入图片描述
七. 各种整数类型的书写语法:

int 直接书写,即为int型int i = 100;
long 后面要加后缀L或者l(为了区别视觉歧义建议大写)long i = 100L;
byte 和 short 无法直接表示,我们可以通过前面所讲的表示范围,可以看出byte和short表示范围内的数,我们都可以赋值给int和long,所以它是无法直接表示的。
我们需要注意的就是long类型后面需要加后缀L
结合前面博文补充个知识点:不同进制的表示,不明白的可以点下连接跳转下:进制转换
整数int 类型127在不同进制下的表示:
2进制 int a = 0b01111111;
8进制 int b = 0377;
10进制 int c = 127;
16进制 int d = 0x7F;
【16进制下的字母不区分大小写】

整数long类型127在不同进制下的表示:
2进制 int a = 0b01111111L;
8进制 int b = 0377L;
10进制 int c = 127L;
16进制 int d = 0x7FL;
浮点类型的书写语法:(只能使用十进制)

float (必须加后缀F或f,推荐F)
float f = 100F;
float f = 3.14F;
double(后缀D或d,推荐D)
double a = 100D
double a = 3.14;//小数默认为double类型,后面可不加
double a = 3.14D;
说到浮点类型我们就要讲到浮点数的科学计数法表示,科学计数法知识补充:科学计数法百科
E4(相当于乘以10的4次方)

float类型31415.926F
3.1415926E4F或3.1415926e4F
double类型31415.926
3.1415926E4或3.1415926e4
3.1415926E4D或3.1415926e4D
以上作为兴趣仅作了解,如果想深入可以自行去研究一下。

发布了41 篇原创文章 · 获赞 13 · 访问量 4757

猜你喜欢

转载自blog.csdn.net/weixin_46163590/article/details/104297835