java数据类型分为两大类:基本数据类型与引用数据类型。
基本数据类型有数值型,字符型,布尔型。基本数据类型的变量直接保存变量的值,在栈空间中为变量分配空间,并将数据存储在此空间中;
引用数据类型有数组,类,接口三类。引用数据类型的变量保存的是数据的地址,引用数据类型是在堆中分配空间来存储实际数值,而在栈中分配空间存储数据在堆中的地址。
栈中存取速度快,因此,java将基本数据类型从引用数据类型中分离出来,达到了提高运行速度的目的。
基本数据类型
数据类型 | 字节数 |
byte | 1 |
short | 2 |
int | 4 |
long | 8 |
float | 4 |
double | 8 |
boolean | 1 |
任何一个带有byte,short,int和常量的表达式中,在计算前java都会提升为int型。
java的浮点数格式完全遵循IEEE754标准。在java中,浮点数默认类型为double,若要表示一个单精度浮点数(float),需要在数值后边加上后缀F或f。
布尔类型只有两个取值true和false,并且它们不能替换成数学。
java中的字符指的是单个的Unicode字符,用char表示,字节数为2。字符常量的表示方式有两种:用单引号将可见ASCII字符括起来、Unicode表示法,前缀为"\u"。对于一些特殊字符,包括一些控制字符、不可见的ASCII控制字符用转义字符表示。
数据类型间的转换
当相容的、优先级别不同的数据类型的数据进行运算时,低级别的数据类型自动转换为高级别的。但高级别的数据类型如果要转变为低级别的数据类型,就要进行强制类型转换。
强制类型转换:(Type)variableName;//将变量转换为Type类型
标识符命名
(1)标识符中只能包含数字、字母、下划线(_)、$。(汉字也是字符)
(2)第一个位置不能是数字;
(3)大小写敏感且长度不受限制;
(4)不能使用保留字;
提问:
某个类中定义了成员变量 char c1, c2, c3; byte b1, b2; int i; 这些成员变量占用的内存空间是多少? |
答案:12字节
下列属于非法标识符的是()。 | 单选题(B) | A._xyz | B.2xyz | C._2xy | ___ |