JAVA数据类型详解

简介: JAVA数据类型详解

一、整型

1、byte

byte:字节型

  • byte占用一个字节。

由于Java中不区分有符号数和无符号数,故一个字节有八位,一位用来描述符号,剩余位代表数值大小。

所以byte能表示的范围为-128~127。

2、short

short:短整型

  • short占用两个字节。
  • short能表示的范围为-32768 ~ 32767。

3、int

int:整型

  • int占用四个字节。
  • int所能表示的范围为

注意:Java是在Java虚拟机JVM中运行的,不管在32位还是64位操作系统,int都是四字节。

4、long

long:长整型

  • long占用八个字节。
  • long所能表示的范围为

二、浮点型

1、float

float:单精度浮点型

  • float占用四个字节。
  • float由于是浮点型数据,其范围一般不关注。
  • 在给float类型变量赋值时,需要在其后加上f。

 

2、double

double:双精度浮点型

  • double占用八个字节。
  • double由于是浮点型数据,其范围一般不关注。  

三、字符型

char

char:字符型

注意:Java与C++不同,Java中char占用两个字节。

一个字符的ascii码占用一个字节,unicode码占用两个字节。

四、布尔型

boolean

boolean:布尔型

  • boolean可以取值为true和false,不存在0是假,非0是真的说法。
  • boolean没有明确规定占用字节数。

注意:在给这八类数据类型赋值时,不能超过其最大表示范围。

五、强制类型转换

强制类型转换使用场景:大范围强制转换成小范围。

  • 从小到大排序:byte->short->char->int->long->float->double
  • 小范围转成大范围,会自动类型提升,也称为隐式转换。
  • 在参与运算时,小于四字节的类型会自动提升为四字节。
  • boolean类型的变量和其他类型的变量不能进行转换。

例题:

在此问题中a+2的结果是int,但是a还是short类型,所以应该进行强制类型转换

 

注意:强制类型转换存在风险。

例题:

public static void main(String[] args) {
     int a=128;
     byte b=(byte)a;
        System.out.println("a="+a);
        System.out.println("b="+b);
    }

运行结果:

分析:

但是byte占一个字节(8个二进制位),能表示的范围为-128~127,128的时候对于byte来说符号为(最高位)1,表示负数,此时-128的补码恰好为为10000000。

目录
相关文章
|
3月前
|
Java
当Java数据类型遇上“爱情”,会擦出怎样的火花?
当Java数据类型遇上“爱情”,会擦出怎样的火花?
55 1
|
2月前
|
Java
java基础(8)数据类型的分类
Java数据类型分为基本数据类型(8种)和引用数据类型。基本类型包括byte, short, int, long, float, double, boolean, char。每种类型有固定占用空间大小,如int占用4字节。字符编码如ASCII和Unicode用于将文字转换为计算机可识别的二进制形式。
70 2
|
3月前
|
Java 程序员
Java数据类型:为什么程序员都爱它?
Java数据类型:为什么程序员都爱它?
52 1
|
3月前
|
存储 Java
Java数据类型:你究竟有多少面孔?
Java数据类型:你究竟有多少面孔?
38 1
|
3月前
|
存储 算法 Java
我与Java数据类型的那场“风花雪月”
我与Java数据类型的那场“风花雪月”
43 0
|
3月前
|
存储 自然语言处理 Java
Java数据类型:为何它如此“撩人”?
Java数据类型:为何它如此“撩人”?
42 0
|
3月前
|
存储 算法 Java
从菜鸟到大神,Java数据类型是如何改变我的人生的?
从菜鸟到大神,Java数据类型是如何改变我的人生的?
31 0
|
9天前
|
存储 缓存 Java
大厂面试必看!Java基本数据类型和包装类的那些坑
本文介绍了Java中的基本数据类型和包装类,包括整数类型、浮点数类型、字符类型和布尔类型。详细讲解了每种类型的特性和应用场景,并探讨了包装类的引入原因、装箱与拆箱机制以及缓存机制。最后总结了面试中常见的相关考点,帮助读者更好地理解和应对面试中的问题。
33 4
|
7天前
|
存储 消息中间件 NoSQL
使用Java操作Redis数据类型的详解指南
通过使用Jedis库,可以在Java中方便地操作Redis的各种数据类型。本文详细介绍了字符串、哈希、列表、集合和有序集合的基本操作及其对应的Java实现。这些示例展示了如何使用Java与Redis进行交互,为开发高效的Redis客户端应用程序提供了基础。希望本文的指南能帮助您更好地理解和使用Redis,提升应用程序的性能和可靠性。
22 1
|
22天前
|
存储 Java 关系型数据库
[Java]“不同族”基本数据类型间只能“强转”吗?
本文探讨了不同位二进制表示范围的计算方法,重点分析了Java中int和char类型之间的转换规则,以及float与int类型之间的转换特性。通过具体示例说明了显式和隐式转换的条件和限制。
33 0
[Java]“不同族”基本数据类型间只能“强转”吗?