在移动开发中由于移动设备内存的局限性,往往需要考虑使用的数据类型所占用的字节数。下面简单介绍下java中几种基本数据类型,以加深记忆。: B9 w; v% h* t& M
在Java中一共有8种基本数据类型,其中有4种整型,2种浮点类型,1种用于表示Unicode编码的字符单元的字符类型和1种用于表示真值的boolean类型。(一个字节等于8个bit)1 _8 o: ]) u/ _* l5 A
9 e: A z8 [$ H8 x L' F6 n' z! B1.整型
8 J; d. i/ }7 ?% Q类型 存储需求 bit数 取值范围 备注
6 {+ x2 W- ]- l, xint 4字节 4*8 8 P2 y4 [2 [+ S7 j# i
short 2字节 2*8 -32768~32767
e1 K+ @/ X3 V( }, olong 8字节 8*8- @+ N( l% w6 G" L5 P' F
byte 1字节 1*8 -128~127
, Q" q- o( @& c$ N3 |
$ C, J6 R+ v1 a/ k) {; I2.浮点型
/ M" C' A$ p1 u; d4 j类型 存储需求 bit数 取值范围 备注* I# P! p0 G/ |: k
float 4字节 4*8 float类型的数值有一个后缀F(例如:3.14F)
. F; E' _2 d# B' B( ^6 H' y$ `double 8字节 8*8 没有后缀F的浮点数值(如3.14)默认为double类型
1 M! f4 f, `( c
! n0 M# g7 ]9 n1 w3.char类型
, M; D7 V. S% B( W类型 存储需求 bit数 取值范围 备注9 Q( W1 r, x6 @- n# D& b
char 2字节 2*87 F1 ~6 L$ y; g
; y/ u, R8 ?4 A6 ~* @3 w4.boolean类型7 e( d( K" E: @6 T
类型 存储需求 bit数 取值范围 备注
# Q; b! r; e& H4 r" x: p hboolean 1字节 1*8 false、true6 ?- m1 k: C2 }, j- h. o2 q. x+ M
2 c" ?6 I; Q' G/ b
补充:Java有一个能够表示任意精度的算书包,通常称为“大数值”(big number)。虽然被称为大数值,但它并不是一种Java类型,而是一个Java对象。 如果基本的整数和浮点数精度不能够满足需求,那么可以使用java.math包中的两个很有用的类:BigIntegerBigDecimal(Android SDK中也包含了java.math包以及这两个类)这两个类可以处理包含任意长度数字序列的数值。BigInteger类实现了任意精度的整数运算,BigDecimal实现了任意精度的浮点数运算。具体的用法可以参见Java API。 , O% x( o1 O6 t- c2 _
|