Java基本数据类型

Java基本数据类型

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:MyEclipse 10  Java

作者:陈剑波

撰写时间:2019年04月019日

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

基本数据类型

Java的两大数据类型:基本数据类型和引用类型。

八种基本数据类型:六种数字类型——四个整数型,两个浮点型。一种字符类型,还有一种布尔型。

byte数据类型:

  1. 占1个字节,8位、有符号的,以二进制补码表示的整数。
  2. 范围-2^7到2^7-1。
  3. 默认值是0。

 

short数据类型:

  1. 占2个字节,16位、有符号的,以二进制补码表示的整数。
  2. 范围-2^15到2^15-1。
  3. 默认值是0。
  4. Short 数据类型可以节省空间。一个short变量是int型变量所占空间的二分之一。

 

int数据类型:

  1. 占4个字节,32位、有符号的,以二进制补码表示的整数。
  2. 范围-2^31到2^31-1。
  3. 默认值是0。
  4. 一般的整型变量默认为 int 类型。

 

long数据类型:

  1. 占8个字节,64位、有符号的,以二进制补码表示的整数。
  2. 范围-2^63到2^63-1。
  3. 默认值是0L。
  4. 这种类型主要使用在需要比较大整数的系统上。

注意:"L"理论上不分大小写,但是若写成"l"容易与数字"1"混淆,不容易分辩。所 以好大写。

 

float数据类型:

  1. 占4个字节,32位,后用小写f或大写F进行标识。
  2. float 在储存大型浮点数组的时候可节省内存空间。
  3. 默认值是0.0f。
  4. 浮点数不能用来表示精确的值。

double数据类型:

  1. 占8个字节,64位,double类型用小写d或大写D进行标识,但一般不加,小数默认的是double类型。
  2. 默认值是0.0f。
  3. double类型不能用来表示精确的值。
  4. 浮点数的默认类型为double类型。

 

double数据类型:

  1. 占1个字节,8位,boolean数据类型表示一位的信息。
  2. 只有两个取值:true和false。
  3. 默认值是false。
  4. 这种类型只作为一种标志来记录 true/false 情况。

 

char数据类型:

  1. 占2个字节,16位,char类型是一个单一的 16  Unicode 字符。
  2. 最大值为0。
  3. 最小值为65535。
  4. char 数据类型可以储存任何字符。

 

Java特殊转义字符: \n 换行 、\r 回车 、\f 换页符、\b 退格 、\0 空字符 、\s 字符串、\t 制表符、\" 双引号、\' 单引号、\\ 反斜杠、\ddd 八进制字符 (ddd)、\uxxxx 16进制Unicode字符

基本数据类型的包装类

Java每个基本数据类型在java.lang包中都有一个相应包装类。

包装类的作用

  1. 提供一系列使用的方法。
  2. 集合不允许存放基本数据类型数据,存放数字时,要使用包装类。

基本数据类型

包装类

byte

Byte

short

Short

int

Integer

long

Long

float

Float

double

Double

char

Character

boolean

Boolean

八种包装类所继承的父类不全相同:

包装类是object的子类,严格来说可分为两种:

Character、 Boolean属于Object子类。

Integer ,Byte,Float,Double,Short,Long都属于Number类的子类,Number继承了Object类,是一个抽象类。里面定义了六个抽象方法来返回以上六种基本数据类型的操作:byteValue()、shortValue()、intValue()、longValue()、floatValue()、doubleValue()。

 

装箱和拆箱

  1. 将基本数据类型转为包装类成为装箱。
  2. 将包装类的类型转为基本数据类型称为拆箱。
  3. 在JDK1.5之后,提供了自动装箱和自动拆箱功能。

 

示例代码及运行结果:

运行结果:

类型转换

自动类型转换(隐式类型转换)

从低位类型转到高位类型自动转换

整形、实型(常量)、字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算。

转换原则:

从低精度向高精度转换

byte 、short、int、long、float、double、char

即:

  1. byte型可以转换为short、int、、long、float和double; 
  2. short可转换为int、long、float和double;   
  3. char可转换为int、long、float和double;   
  4. int可转换为long、float和double;   
  5. long可转换为float和double;   
  6. float可转换为double;

注意:

  1. 两个char型运算时,自动转换为int型;当char与别的类型运算时,也会先自动转换为int型的,再做其它类型的自动转换。
  2. 布尔型和其它基本数据类型之间不能相互转换。
  3. 低位数据类型自动转换为高位数据类型。
  4. 整数类型可以自动转化为浮点类型,可能会产生舍入误差。

 

强制类型转换(显式类型转换)

从高位类型转为低位类型需要强制类型转换

格式:(type)value type是要强制类型转换后的数据类型。

注意:

  1. 强制类型转换可能导致溢出或损失精度。
  2. 在把容量大的类型转换为容量小的类型时必须使用强制类型转换 。
  3. 浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入。

 

示例代码及运行结果:

运行结果:

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值