Java中的基本数据类型

简介: 1.基本数据类型2.整数类形 (1)byte类型(2)short类型(3)int类型(4)long类型3.浮点类型(1)单精度浮点型(2)双精度浮点型4.字符类型5.逻辑类型

1.基本数据类型

Java中的基本数据类型分为四类八种,即:


四类:整数类型(byte、short、int、long)、浮点类型(float、double)、字符类型(char)、逻辑类型(boolean)


八种:字节型(byte)、短整型(short)、整形(int)、长整型(long)、单精度浮点型(float)、双精度浮点型字符型(double)、布尔型(boolean)

数据类型 关键字 内存占用 取值范围
字节型 byte 1字节 -128 ~ 127
短整型 short 2字节 -32768 ~ 32767
整形 int 4字节 -2^31 ~ 2^31 -1
长整型 long 8字节 -2^63 ~ 2^63 -1
单精度浮点型 float 4字节 有范围,但一般不关注
双精度浮点型 double 8字节 有范围,但一般不关注
字符型 char 2字节 0 ~ 65535
布尔型 boolean 没有明确规定 true 和 false


在Java中,整形和浮点型都是有符号


字节是计算机中表示空间大小的基本单位,在计算机内存中,1个字节(byte)= 8个二进制位(bit


2.整数类形

在Java中整形没有有符号和无符号之分,因此每个整形类型的变量都会将最高位作为符号位。


整数类型的变量在定义时,若没有给出初值,且在使用前没有设置初值,则编译时会报错


因此在定义整形类型变量时,如果没有合适的初始值,可将初始值设置为0


在为变量设置初始值的时候,值不能超过整数类型的表示范围,否则会导致溢出


(1)byte类型

byte在内存中占1个字节,8个二进制位。


byte b = 10;


byte的范围为-128 ~ 127,当超出其范围时,会报错


8.png


(2)short类型

short在内存中占2个字节,16个二进制位。


short类型变量的取值范围为 -32768 ~ 32767


short s = 10;


(3)int类型

int在内存中占4个字节,32个二进制位。


int类型变量的取值范围为-2^31 ~ 2^31 - 1


在定义变量时,若未初始化,且在使用前,未赋值,则会报错

publicclassTest {
publicstaticvoidmain(String[] args) {
inta;
System.out.println(a);
    }
}


运行结果

9.png


(4)long类型

long在内存中占8个字节,64位。


long类型变量的取值范围为-2^63 ~ 2^63 - 1


为了区分int类型与long类型,一般建议在long类型变量后加上L或者l,由于l与1不好区分,更推荐加上L

publicclassTest {
publicstaticvoidmain(String[] args) {
longl=10L;
System.out.println(l);
    }
}


3.浮点类型

浮点数与整数在内存中的存储方式不同,不能使用2的n次方来计算浮点类型变量的取值范围


浮点类型变量的内存布局遵守IEEE 754标准(与C语言相同),使用有限的内存空间表示可能无限的小数,因此会存在一定的精度误差,所以浮点数是近似值,而不是精确值


浮点类型的变量在定义时,若没有给出初值,且在使用前没有设置初值,则编译时会报错


建议在定义变量时,就为浮点类型变量赋初始值,若没有合适的初始值,可将其设置为0.0


(1)单精度浮点型

float在内存中占4个字节,32个二进制位。


float类型的变量在定义时,必须在后面加上f或者F


float f = 1.2f;


若不加上f或F,则会报错


10.png

(2)双精度浮点型

double在内存中占8个字节,64个二进制位。


double d = 1.2;

4.字符类型

char在内存中占2个字节,16个二进制位。


Java中使用 单引号 + 单个字母 的形式来表示字符值。


计算机中的字符本质上是一个整数。在C语言中使用ASCII码表示对应的字符,而Java中使用Unicode表示字符。因此一个字符占用两个字节,表示的字符种类更多。(可以表示中文)


char c = 'a';

char ch = '你';


5.逻辑类型

boolean类型的变量只有两种取值,即true和false,true为真,false为假


boolean类型不能与int类型相转换,且不存在1表示true,0表示false的用法,不能对boolean类型的变量进行+、-等运算操作


boolean flag = true;


在使用布尔类型变量时,若没有给出初值,且在使用前没有设置初值,则编译时也会报错


11.png


在Java虚拟机中,并没有明确规定boolean占几个字节,也没有专门用来处理boolean的字节码指令。  


目录
相关文章
|
26天前
|
Java
当Java数据类型遇上“爱情”,会擦出怎样的火花?
当Java数据类型遇上“爱情”,会擦出怎样的火花?
46 1
|
26天前
|
Java 程序员
Java数据类型:为什么程序员都爱它?
Java数据类型:为什么程序员都爱它?
39 1
|
26天前
|
存储 Java
Java数据类型:你究竟有多少面孔?
Java数据类型:你究竟有多少面孔?
31 1
|
1月前
|
Java
【Java基础面试四】、介绍一下Java的数据类型
这篇文章介绍了Java的数据类型,包括8种基本数据类型(整数、浮点、字符、布尔)和3类引用数据类型(数组、类、接口),并提供了基本数据类型所占内存空间和数据范围的详细信息。
|
26天前
|
存储 算法 Java
我与Java数据类型的那场“风花雪月”
我与Java数据类型的那场“风花雪月”
34 0
|
26天前
|
存储 自然语言处理 Java
Java数据类型:为何它如此“撩人”?
Java数据类型:为何它如此“撩人”?
34 0
|
26天前
|
存储 算法 Java
从菜鸟到大神,Java数据类型是如何改变我的人生的?
从菜鸟到大神,Java数据类型是如何改变我的人生的?
25 0
|
6天前
|
存储 Java
Java内置数据类型和实例的详解
Java内置数据类型分为基本和引用两类。基本数据类型包括整型(`byte`、`short`、`int`、`long`)、浮点型(`float`、`double`)、字符型(`char`)和布尔型(`boolean`),用于存储简单的数值;引用数据类型则用于存储对象的引用,包括类(如`String`)、接口和数组。掌握这两类数据类型是Java编程的基础。以下示例展示了各种数据类型的使用方法。
|
1月前
|
存储 Java 测试技术
Java零基础教学(08):基本数据类型和取值范围
【8月更文挑战第8天】Java零基础教学篇,手把手实践教学!
22 5
Java零基础教学(08):基本数据类型和取值范围
|
26天前
|
存储 Java 程序员
揭秘!Java数据类型背后的“黑科技”
揭秘!Java数据类型背后的“黑科技”
30 1