一、整数类型
整数类型简称整型,用来存储整数数值,即没有小数部分的数值。可以是正整数,也可以是负数。整型数据根据它所占内存大小的不同,可分为byte、short、int和long 4种类型。它们具有不同的取值范围。
整型数据类型
数据类型 内存空间(8位等于1字节) 取值范围
byte ( 位) 8位 -128~127
short (短整数) 16位 -32768~32767
int
(整数)
32位 -2147483648~2147483647
long (长整数) 64位 -9223372036854775808~9223372036854775807
1.int型
定义int变量有以下四种语法:
int x; //定义int型变量x
int x,y; //同时定义int型变量x,y;
int x = 10,y = -5; //同时定义int型变量x,y;并赋予初值
int x =5 + 23; //定义int型变量x,并赋予公式(5+3)计算结果的初值
int型是java整型值的默认数据类型。当多个尚未运行定义数据类型的整数做运算时,运算的结果将默认为int类型。例如,下面这行代码:
System.out.println(2+18); //输出20
等同于如下代码:
int a = 2;
int b = 18;
int c = a+b;
System.out.println(c);//输出20
2.byte型
byte型的定义方式与int相同。定义int型变量,代码如下:
byte a;
byte a,b,c;
byte a = 19;b = -45;
3.short型
short型的定义方式与int相同。定义short型变量,代码如下:
short s;
short s,t,r;
short s = 1000,t = -19;
short s = 20000/10;
4.long型
由于long的取值范围比int型大,且属于高精度数据类型,所以在赋值时要和int型做出区分,需要在整数后面加上 L 或者 l (小写的 L)。定义long类型变量,代码如下:
long number;
long number,run;
long number = 12345678L,run = -987654321L;
long number = 123456789L*987654321L;
5.求整型类型的值
代码如下:
运行结果如下:
二、浮点类型
浮点类型简称浮点型,用来存储含有小数部分的数值。java语言中浮点类型分别为单精度浮点类型(float)和双精度浮点类型(double),它们具有不同的取值范围。
浮点型数据类型
数据类型 内存空间(8位等于1字节) 取值范围
float 32位 1.4E-45~3.4028235E38
double 64位 4.9E-324~1.7976931348623157E308
默认情况下,小数都被看作double型,若想使用float型小数,则需要在小数后面添加F或f。另外,可以使用后缀d或D来明确表明这是一个double类型数据,但不加d或D并没有硬性规定。而定义float型变量时,如果不加F或f,系统会认为是double类型数据,进而出错。定义浮点类型变量,代码如下:
float f1 = 13.23f;
double d1 = 4562.12d;
double d2 = 45678.1564;
根据身高体重计算BMI指数
创建BMIexponent类,声明double型变量height来记录身高,单位为米;声明int型变量weigt记录为体重,单位为千克;根据BMI=体重(身高*身高)计算BMI指数。代码如下:
运行结果如下:
三、字符类型
1. char 型
字符型(char)用于储存单个字符,占用16位(两个字节)的内存空间。在定义字符型变量时,要以单引号表示,如's'表示一个字符。但是's'则表示一个字符串,虽然只有一个字符,但由于使用单引号,它任然表示字符串,而不是字符。
使用char关键字可定义字符变量,其语法如下:
char x = 'a';
由于字符a在Unicode表中的排序位置是97,因此允许将上面的语句写成:
char x = 97;
例,查看字符与Unicode码互相转换的结果
在项目中创建类Gess,编写如下代码,将Unicode表中某些位置上的字符以及一些字符在Unicode表中的位置在控制台上输出。
运行结果如下:
String类型为字符串类型,可以用来保存由多个字符组成的文本内容,其用法与字符类型类似,但文本内容需要用双引号标注。
2.转义字符
转义字符是一种特殊的字符变量,它以反斜杠“ \ ”开头,后跟一个或多个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“ 转义 ”。例如,printf函数的格式串中用到的“ \n ”就是一个转义字符,意思就是“ 回车换行 ”。java中的转义字符表如下所示。
转义字符
转义字符 含义 转义字符 含义
\ddd 1~3位八进制数据所表示的字符,如\123 \r
回车
\uxxxx 4位十六进制数据所表示的字符,如\u0052 \n 换行
\' 单引符号 \b 退格
\\ 反斜杠字符 \f 换页
\r 垂直制表符,将光标移到下一个制表符的位置
将转义字符赋值给字符变量时,与字符常量值一样需要使用单引号。
例,输出' \ '字符和' ★ '字符的Unicode码为2605
代码如下:
运行结果如下:
四、布尔类型
布尔类型又称为逻辑类型,简称布尔型,通过关键字boolean来定义布尔类型变量。布尔类型只有true和false两个值,分别代表布尔逻辑中的“ 真 ”和“ 假 ”。布尔值不能与整数类型进行交换。布尔类型通常被用在流程控制中,作为判断条件。定义布尔类型变量,代码如下:
boolean b; //定义布尔类型变量b
boolean b1,b2; //定义布尔类型变量b1、b2
boolean b = true; //定义布尔类型b,并赋值给初值true
例,布尔类型b1的值为true,b2的值为false