Java语言中有8种基本数据类型,基本情况汇总如下:
Java中8种基本数据类型总结
序号数据类型存储需求大小/位封装类默认值可表示数据范围1byte(位)1字节8位Byte0-128~1272short(短整数)2字节16位Short0-32768~327673int(整数)4字节32位Integer0-2147483648~21474836474long(长整数)8字节64位Long0-9223372036854775808~92233720368547758075float(单精度)4字节32位Float0.01.4E-45~3.4028235E386double(双精度)8字节64位Double0.04.9E-324~1.7976931348623157E3087char(字符)2字节16位Character空0~655358boolean1字节8位Booleanfalsetrue或falseJava 中char无论中英文数字都占用2字节,是因为 Java 中使用 Unicode 字符,所有字符均以2个字节存储。
整型 int :整数类型 short :短整型 long :长整型 byte :字节类型
浮点型 float :浮点类型(单精度) double :浮点类型(双精度)
逻辑型 boolean :布尔型
字符型 char :字符型
输出
byte的大小:8 byte的默认值:0 byte的数据范围:-128~127 short的大小:16 short的默认值:0 short的数据范围:-32768~32767 int的大小:32 int的默认值:0 int的数据范围:-2147483648~2147483647 long的大小:64 long的默认值:0 long的数据范围:-9223372036854775808~9223372036854775807 float的大小:32 float的默认值:0.0 float的数据范围:1.4E-45~3.4028235E38 double的大小:64 double的默认值:0.0 double的数据范围:4.9E-324~1.7976931348623157E308 char的大小:16 char的默认值: boolean的大小:8 boolean的默认值:false boolean的数据范围:-128~127 String字符串的默认值:str的默认长度:0 String字符串的默认值:null基本数据类型自动转换 byte -> short char -> int -> long float -> double int -> float long -> double
重要的一点:小可转大,大转小可能会失去精度 低数据类型可以直接赋值给高数据类型,反之,高数据类型转换为低数据类型必须强转,即提前制定数据类型,例 int a = (int) 0.0F
而如果需要识别字符是否为中文,可以使用正则匹配式:
String _regex = "[\\u4e00-\\u9fa5]"; //中文的范围Java有一个能够表示任意精度的算数包,通常称为“大数值”(big number)。虽然被称为大数值,但它并不是一种Java类型,而是一个Java对象。
如果基本的整数和浮点数精度不能够满足需求,那么可以使用java.math包中的两个很有用的类:BigInteger、BigDecimal(Android SDK中也包含了java.math包以及这两个类)这两个类可以处理包含任意长度数字序列的数值。BigInteger类实现了任意精度的整数运算,BigDecimal实现了任意精度的浮点数运算。具体的用法可以参见Java API。
