Java的数据类型,一些鲜为人知的细节概述

Java的数据类型可以分成两大类:

  • 基本数据类型
    • 整型 byte,short,int,long
    • 浮点型 float,double
    • 字符类型 char
    • 布尔类型 boolean
  • 引用数据类型
    • 数组
    • 接口

不同的数据类型占用的内存空间是不同的;

不同的内存空间,所存储的数据的大小范围是不一样的;

Java中的默认类型:整数类型是int,浮点类型double;

字面量:是指在源代码中直接表示的固定值,字面量用于在程序中表示基本数据类型的具体数值或字符序列。Java支持多种类型的字面量,包括整数字面量浮点数字面量字符字面量字符串字面量布尔字面量以及null字面量

这节主要是Java基本的数据类型,后续还会补充引用数据类型的相关知识。

1、整数型

byte short int long

1)byte、short类型(字节型、短整型)

byte取值范围:-128~127     1Byte=8bits

short取值范围:-32768~32767     2Byte=16bits

byte和short都没有专门的字面量表示方法,所以Java中特殊规定,允许使用一个int类型字面量为byte或short变量赋值。但是,编译器会对等号右边的常量值进行检查,如果超出等号左边的类型实际可表示的数值范围,就会编译报错,也就是说,在给byte和short类型变量赋值时,能成功的条件有两个:

  • 等号右边一定是常量
  • 常量的实际数量在byte或short可表示的范围内

2)int类型(整型)

int取值范围:-2^31~2^31-1     4Byte=32bits

int类型的三种赋值方式

  • 使用int字面量赋值
  • 使用int变量赋值
  • 使用能够被int兼容的变量或字面量类型赋值

3)long类型(长整型)

long取值范围:-2^63~2^63-1     8Byte=64bits

long类型字面值常量,后面需要加L或l

long类型的三种赋值方式:

  • 使用long字面量赋值
  • 使用long变量为long变量赋值
  • 使用能够被long兼容的变量或字面量类型赋值

注意:使用long类型的数据时,后面要加大写的L或者小写l,建议加上大写的L。

2、浮点型

1)float类型(单精度浮点数)

float类型的取值范围:1.4E-45~3.4E+38      4Byte=32bits

说明:E+38表示是乘以10的38次方,同样,E-45表示乘以10的负45次方。

float类型的三种赋值方式:

  • 使用float类型字面量
  • 使用一个float类型变量赋值
  • 使用float能够兼容的字面量或变量类型赋值

注意:float字面值常量,后面需要加F或f

2)double类型(双精度浮点数)

double类型取值范围:4.9E-324~1.7977E+308     8Byte=64bits

double类型的赋值方式:除了boolean其他都能兼容

注意:double字面值常量,后面需要加D或d

3、布尔型
1)boolean类型(布尔类型)

boolean类型取值范围:只能是true,false    1Byte=8bits

  

4、字符型

1)char类型(字符型)

char类型取值范围:0~65535  或 0~2^16-1    2Byte=16bits

char最基础的字面量表示方法:单引号包围一个单个字符

char,本质上是一个16位(2字节)构成的Unicode编码码值,其类型值用一般''括起来的单个字符,可以是一个阿拉伯数字,一个中文汉字字符,一个英文字母,一个标点符号。

Unicode:万国码。无论字符数据在传输和存储时采⽤的是什么编码,只要进⼊到Java内存中,所有字符都是以Unicode形 式存在。

char本质实际就是一个数值,代表某个Unicode编码表中的数值,而且是Java中唯一的一个无符号数类型。

char类型字面量的表示方法:

注意:String为字符串类型,它不是基本数据类型,是类类型。

引用数据类型等待更新中......

  • 14
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值