java基础数据类型

本文详细介绍了Java的内置数据类型,包括byte、short、int、long、float、double、boolean和char,以及它们的取值范围、默认值和使用场景。此外,还讨论了引用类型的概念,如对象、数组和其默认值。同时,讲解了Java中的常量、类型转换规则,包括自动类型转换和强制类型转换。最后,提到了在运算过程中不同类型之间的转换需要注意的细节。
摘要由CSDN通过智能技术生成

java基础数据类型

内置数据类型

byte

  • byte数据类型是8位、有符号、以二进制补码表示的整数
  • 最小值是 -128
  • 最大值是 127
  • 默认 0
  • byte类型用于在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有 int 的 四分之一

short

  • 16位的,有符号的二进制补码表示的整数
  • 最小值 -32768(-2^15)
  • 最大值 32757(2^15-1)
  • 默认为 0
  • 占用空间为 int 的二分之一

int

  • 32位,有符号的以二进制表示的整数
  • 最小为 -2,147,483,648(-2^31)
  • 最大为 2,147,483,647(2^31-1)
  • 默认为0
  • 一般的整型变量默认为 int 类型

long

  • 64位,有符号以二进制表示的整数
  • 最小值为(-2^63)
  • 最大值为(2^63-1)
  • 默认为 0L
  • 一般用于比较大的数
  • 后缀要加L,最好是大写,容易辨认,小写可能会出现认错

float

  • float 是单精度、32位浮点数
  • 在存储大型浮点数组时可以节省内存空间
  • 默认 0.0f
  • 浮点数不能用来表示精确的值,如货币,因为浮点数存在一定的误差
  • 后缀的 f 是必须加的

double

  • 双精度、64位浮点数
  • 浮点数默认为double类型
  • double同样不能表示精确值,如货币
  • 默认 0.0

boolean

  • 表示一位的信息
  • 只有 true、false 两个取值
  • 只作为一种标志,记录 true/false
  • 默认为 false

char

  • 单一的 16位 Unicode 字符

  • 最小为 \u000(即 0)

  • 最大为 \uffff(即 65535)

  • char 数据类型可以存放任何字符

      char letter = 'A'
    

引用类型

  • 在java中,引用类型的变量类似 C/C++ 的指针,引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个铁定的类型。变量一旦声明,类型就不能被改变。
  • 对象、数组都是引用数据类型
  • 所有引用类型的默认值都是null
  • 一个引用变量可以用来引用任何与之兼容的类型

java常量

常量在程序运行时不能被修改。使用 final 关键字修饰。

final double PI = 3.1415927;

常量可以小写,但为了便于识别,通常使用全大写。

字符串常量和字符常量都可以包含任何 Unicode 字符。

char a = '\u0001'
String a = "\u0001";

特殊转义字符序列

符号字符含义
\n换行
\r回车
\f换页符
\b退格
\0空格符(0x0)
\s空格(0x20)
\t制表符
"双引号
单引号
\反斜杠
\ddd八进制字符
\uxxxx16进制Unicode字符

自动类型转换

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

转换从低到高

byte > short > char > int > long > float > double

注意:

  • boolean类型不能转换
  • 不能把对象类型转换为不相关的对象
  • 把容量大的转为容量小的必须强制类型转换
  • 转换过程中可以导致溢出或损失精度
  • 浮点数转整数是通过舍弃小数得到,非四舍五入。

自动类型转换

必须满足转换前的数据类型的位数小于转换后的数据类型。

强制类型转换

  • 转换的数据类型必须是兼容的(数字转数字等)

  • 格式:(type)value type

      int i=10;
      byte b = (byte)i;
    

隐含强制类型转换

  • 整数的默认类型是 int
  • 浮点数类型不存在这种情况,因为在定义 float类型时必须在数字后跟上 F或f。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值