美文网首页
数据类型、变量和运算符

数据类型、变量和运算符

作者: 浪迹一生 | 来源:发表于2017-07-10 18:00 被阅读0次

数据类型

在Java中,数据类型可以分为两大类
8种基本数据类型:boolean,byte,short,int,long,char,folat,double
3种引用数据类型:类,接口,数组

基本数据类型:4类8种基本数据类型

1、四种整数类型:byte、short、int、long
整数类型 名称 占用存储空间(字节) 长度 (位) 数的范围
byte 字节类型 1 8 -128~127
short 短整型 2 16 -215~215-1
int 整型 4 32 -231~231-1
long 长整型 8 64 -263~263-1

注:
声明 long 类型数据后面需要加 L 或 l 标识。

2、两种浮点数类型:float、double
浮点数类型 名称 占用存储空间(字节) 长度 (位) 数的范围
float 单精度浮点数据类型 4 32 3.4E-038 ~3.4E+038
double 双精度浮点数据类型 8 64 1.7E-308~1.7E+308

注:
在数字后面加 F 或 f 表示 float 型数据
在数字后面加 D 或 d 表示 double 型数据
通常浮点型数据默认为 double型

3、字符数据类型:char

(1)表示单个字符,占用内存空间为2个字节,长度是16位,赋值时用单引号(' ')括起来。

4、布尔数据类型:boolean

(1)boolean类型有两个数值:true 和 false ,长度是1位


变量

1、概念:

变量是指在程序运行过程中随时可以变化的量。
变量是程序中数据的临时存放场所。
其作用是保存程序运行时用户输入的数据和特定的运算结果等。

2、声明:

变量的名称也称为标识符,应对其初始化再使用。
声明多个变量,用逗号分隔

//  变量数据类型     变量名    (=   变量初始值)
byte  by = 127;
short sh = 32767;
int  a = 16,25;
int  b ;
long lo = 100000000000 L;
float fl = 3.1415926 F;
double  b = 3.141592695478 ; 
char ch = 'a';
boolean    bool    =  true  (false);

数据类型的转换

分为两种转换形式:自动类型转换 和 强制类型转换
规则:小转大,自动转;大转小,强制转。

1、自动类型转换

(1)两种数据类型彼此兼容
(2)目标数据类型的取值范围要大于源类型
(3)boolean数据类型不可以转换成其他数据类型
(4)byte,short,char——>int——>long——>float——>double。
(5)byte,short,char之间不能互相转换,它们在运算过程中先转换成 int 类型
(6)小范围数据类型和大范围数据类型的运算结果是大范围数据类型
(7)字符类型和整数运算结果为整数,字符类型先自动转化成二进制, 然后二进制转化成整数

int a = 100;
double b = 100;
double c = a+b;
System.out.println(w+z);//输出结果为double类型

char ch2 = 'a';
System.out.println(ch2+0);//输出结果是97,int型数据

2、强制类型转换

(1)当两个数据类型不兼容时
(2)目标数据类型的取值范围要小于源类型
(3)在强制类型转换过程中,源类型的值可能大于目标数据类型,因此可能会造成精度降低或者溢出。
(4)格式

源数据类型     变量  =  (目标类型) 值
byte a;
int b = 125;
a = (byte) b

运算符

一种特殊符号,用来表示数据的赋值,运算和比较。
1、算术运算符:+、-、*、/、%(取余)、++、-- *
2、赋值运算符:=、+=、-=、
=、/=、%=
3、关系(比较)运算符:>、<、>=、<=、==、!=、instanceof
4、逻辑运算符:!(取反)、&&、||、
5、位运算符:&、|、^(异或)、<<(左移)、>>(右移)、>>>(右移)、~(非)
6、条件运算符:(三元运算符) ? :

1、算术运算符

符号 含义 备注
+ 加法
- 减法
* 乘法
/ 除法 如果是两个整数相除,结果只取整数部分
% 取余
++ 自增 ++a:前自增,先将变量加一操作,然后再使用; a++:后自增,先使用变量,使用完之后再加一
-- 自减 算法同++
int a = 5;
int b = 2;
int c = a / b; // c = 2 除号取整数部分
int d = a % b; // d = 1 余数为1
int e = a++;  // e = 5,后自增,先使用变量再加一
int f = ++b; // f = 3 ,前自增,先将变量加一操作,然后再使用

2、赋值运算符

符号 含义 备注
= a = 5 把5赋值给a
+= x += y x = x + y
-+ x -= y x = x - y
*= x *= y x = x * y
/= x /= y x = x / y
%= x %= y x = x % y

3、关系运算符(比较运算符)

符号 含义 备注
> 大于 a > b
< 小于 a < b
>= 大于等于 a >= b
<= 小于等于 a <= b
== 等于 a == b
!= 不等于 a != b
instanceof 判断对象是否是特定类的一个实例 返回值是布尔类型

4、逻辑运算符 ! && ||

逻辑运算符:&&(与)、||(或)、!(非)
规则:逻辑运算符两端的操作表达式的值必须是布尔类型

符号 含义 备注
&& 短路与 相当于“且”,用&&连接表达式时,如果左边的表达式结果为 false,则不会计算其右边的表达式。(真真为真 )
短路或 相当于“或”,如果左边的表达式结果为 true,则不会计算其右边的表达式。(真假为真,假假为假)
! 逻辑非 取反
int a = 2,b = 1;
boolean c = ( a != 2 && b==1);//a!=2的值为false,不需要再进行右侧判断,d 的值为 false
boolean d = ( a != 2 || b == 1);//a!=2的值为false,b==1值为true,所以d 的值为 true

5、位运算符:

位运算符:&(与)、|(或)、^(异或)、~(非)、<<(左移)、>>(右移)、>>>(右移)
规则:只对 byte、short、int、long、char 数据类型有效。

符号 含义 备注
& 按位“与” 只有参加运算的两位都是1时,&的运算结果才为1,否则为0
按位“或” 只有参加运算的两位都是0时,运算结果才为0,否则为1
^ 按位“异或” 只有参加运算的两位不同时,^的运算结果才为1,否则为0
~ 按位“非”
<< 左移 a << b,将a的二进制数据左移b位,右边移空的部位补0
>> 右移 a >> b,将a的二进制数据右移b位,如果最高位是0,则左边移空的部位补0,如果最高位是1,则左边移空的部位补1
>>> 无符号位右移 a >>> b ,不管最高位是0或1,左边移空的部位都补0

6、条件运算符:(三元运算符)

符号 含义 备注
?: 三元运算符 比较表达式的结果,若结果为true,分号左边作为结果返回;若结果为false 分号右边作为结果返回。可以替代 if-else 结构。
int a = 100;
int b = 800;
int c = a < b ? a : b; // 条件表达式 a < b 结果为 true,返回分号左边 a 值
int d = a > b ? a : b; // 条件表达式 a > b 结果为 false,返回分号右边 b 值

相关文章

网友评论

      本文标题:数据类型、变量和运算符

      本文链接:https://www.haomeiwen.com/subject/duwdhxtx.html