3.1 JAVA的数据类型
Java语言是一种严格的“类型化”语言。这意味着每个变量都必须有一个声明好的类型。Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。Java另外还提供大数字对象,但它不是Java的数据类型。
1、整数:
定义:没有小数部分的数字,负数是允许的。
种类:Java提供四种整数类型:
类型 | 字节 | 取值范围 |
int | 4个字节 | -2,147,483,648到2,147,483,647 |
short | 2个字节 | -32,768到32,767 |
long | 8个字节 | -9,223,372,036,854,775,808L到9,223,372,036,854,775,807L |
byte | 2个字节 | -128到127 |
2、浮点数:
定义:含有小数部分的数字。
种类:Java提供两种浮点数:
类型 | 字节 | 取值范围 |
float | 4个字节 | 约+—3.40282347E+38F(6~7个有效的十进制数位) |
double | 8个字节 | 约+-1.79769313486231570E+308(15个有效数位) |
说明:
1)float类型的数值有个后缀:F,如果没有后缀F,那么默认为double。double类型的数值也可以使用后缀D。
2)当这些数字遇到取值范围错误时,会发生(上溢Overflow);而在遇到象被零除时,会发生下溢(Underflow)。
2)当这些数字遇到取值范围错误时,会发生(上溢Overflow);而在遇到象被零除时,会发生下溢(Underflow)。
3、字符类型:
定义:单引号用来表示char常量
说明:
1)双引号则表示一个字串,他是Java的一个对象,并不是数据类型。
2)char类型表示Unicode编码方案中的字符。
Unicode可同时包含65536个字符,ASCII/ANSI只包含255个字符,实际上是Unicode的一个子集。Unicode字符通常用十六进制编码方案表示,范围在'/u0000'到'/uFFFF'之间。/u0000到/u00FF表示ASCII/ANSI字符。/u表示这是一个Unicode值。
3)在Java中除了用这个/u的形式来表示字符外,还可以使用换码序列来表示特殊字符。
/b | 退格 | /u0008 |
/t | 退格 | /u0008 |
/n | 换行 | /u000a |
/r | 硬回车 | /u000d |
/" | 双引号 | /u0022 |
/' | 单引号 | /u0027 |
/ | 反斜杠 | /u005c |
4、布尔类型:
boolean类型只有两个值:false和true,用过其他编程语言的朋友肯定对它们并不陌生。
例子1:
public class A {
public static void main(String[] args) {
int n =40;
double a = 78d;
float b = (float)6.3e7;
System.out.println(n);
System.out.println(a);
System.out.println(b);
}
}
输出结果:
40
78.0
6.3E7
例子2:
public class Test601 {
public static void main(String args[]){
boolean x=true;
boolean y=false;
System.out.println("x&&y="+(x&&y));
System.out.println("x||y="+(x||y));
System.out.println("x^y="+(x^y));
System.out.println("!x="+(!x));
}
}
输出结果:
x&&y=false
x||y=true
x^y=true
!x=false