JAVA是一门优秀的半编译型,半解释型的语言,具有赏心悦目的语法和易于理解的语义。变量是程序运行时可变的量,类型对于变量的种类进行了划分,不同类型的变量具有不同的特性。本文将对JAVA中的类型做一个汇总。
- 总述
- 基本数据类型
- 特殊的字符串类型
1.小结
其中需要注意以下几点:
<1>JAVA的安全性。
①在变量使用前必须对变量进行初始化,否则会编译报错。
②如果运算结果超出了基本类型所能表示的范围,就会溢出,否则会编译报错。
③常量不能在程序运行过程中进行修改。
<2>包装类:此处将其当作基本类型的PLUS版本,有两种特殊的基本数据类型的包装类:int->Integer和char->Character,其余是首字母大写。
<3>存在隐式类型转换和类型提升的问题,一般不建议代码中不同类型混用,以此规避类型转换和类型提升的问题。
下面重点介绍一下基本的数据类型。重点是每种数据类型及其范围。
2.基本数据类型
①整型变量—int
基本语法格式:
int 变量名 = 初始值;
示例:
int num = 10;
注意事项:
*int定义的一个变量既可以表示正数,也可以表示负数。在JAVA中,没有无符号整数的概念。
*在JAVA中,一个int占4个字节。需要注意的是,不必像C语言中那样区分在32位或64位下是否有不同,一个int变量占几个字节与操作系统没有关系,这句话同样适用其他基本数据类型所占的字节数。
*一个int变量所能表示的范围为:-2^31–> 2^31-1
②长整型变量—long
基本语法格式:
long 变量名 = 初始值;
示例:
long num = 10L;
注意事项:
*初始化时,将初始值设为10L或者10l。使用10初始化也可以,但不建议,因为10的类型是int,10L的类型是long。
*在JAVA中,一个long占8个字节。
*一个int变量所能表示的范围为:-2^63–> 2^63-1
③双精度浮点型变量—double
基本语法格式:
double 变量名 = 初始值;
示例:
double num = 1.0;
注意事项:
*JAVA的double类型的布局依旧遵守IEEE 754标准,尝试用有限的内存空间表示可能无限的小数,势必会存在一定的精度误差。
*在JAVA中,一个double占8个字节。但是浮点数的在内存中的存储和整数差别很大,所以不能用2^n的形式表示其数据范围。
④单精度浮点型变量—float
基本语法格式:
float 变量名 = 初始值;
示例:
float num = 1.0F;
注意事项:
*在JAVA中,一个float占4个字节。同样遵守IEEE 754标准,由于表示的数据精度范围过小,所以推荐使用double。
⑤字符型变量—char
基本语法格式:
char 变量名 = 初始值;
示例:
char ch = 'a';
注意事项:
*在JAVA中使用 单引号+单个字母 来表示字符字面值。
*计算机中的字符本质上是一个整数,C语言中使用的是ASCII表示字符,在JAVA中采用Unicode表示。
*在JAVA中,一个char占2个字节。相较于C语言,表示的字符更多,包括中文。如char ch = ‘哦’;在这里需要注意的是,编译时编码格式是JBK,创建文件时使用的是UTF-8,所以需要指定编译格式,来获得正确的结果。在命令行编译时加上-encoding UTF-8选项:javac -encoding UTF-8 test.java。
⑥字节类型变量—byte
基本语法格式:
byte 变量名 = 初始值;
示例:
byte value = 0;
注意事项:
*字节类型表示的也是整数,它与字符类型毫无关系。
*在JAVA中,一个byte占1个字节。表示的数据范围:-2^7–> 2^7-1。
⑦短整型变量—short
基本语法格式:
short 变量名 = 初始值;
示例:
short value = 0;
注意事项:
*在JAVA中,一个short占2个字节。表示的数据范围:-2^15–> 2^15-1。
⑧布尔类型变量—boolean
基本语法格式:
boolean 变量名 = 初始值;
示例:
boolean value = true;
注意事项:
*相较于C语言来说,这是JAVA新增的一个数据类型。它定义的变量只有两种取值:true(表示真)和false(表示假)。
*在JAVA中,boolean类型和int类型不能进行数据转换,不存在1表示ture,0表示false的说法。
*关于boolean类型,它在JVM中的实现有些占1个字节,有些占1个比特位,这个并没有明确的规定。
3.字符串类型变量—String
基本语法格式:
String 变量名 = "初始值";
示例:
String name = "leilei";
注意事项:
*JAVA 使用 双引号+若干字符 的方式表示字符串字面值。
*String不是基本数据类型,而是引用数据类型。
*字符串中一些特定的bu能直接表示的字符需要转义。
转义字符 | 解释 |
---|---|
\n | 换行 |
\t | 水平制表符 |
’ | 单引号 |
" | 双引号 |
\ | 反斜杠 |
**字符串中的 + 操作,表示字符串拼接。意思是,当一个+表达式中存在字符串的时候,都是在执行字符串的拼接行为。任何类型的数据都可以使用与字符串用+进行拼接,其结果还是一个字符串。
// 字符串拼接示例
String a = "ret = ";
int b = 10;
int c = 24;
String d = a + b + c;
System.out.println(d);
//结果
ret = 1024
以上就是JAVA中的类型汇总。