DAY_02数据类型、变量、操作符
1.数据类型
1.1分类:
在java中:整数默认是整形int;
小数默认是双浮点型 double;
小数默认是double
float声明方式需要在值后面追加F
强制类型转换:float f_2 = (float)1.4;
字符型char使用’'英文单引号表示,有且只有一个数据 占用2字节 16位 范围 0-65536 没有负数
**转移符:**把有意义字符串转换为无意义字符:\
char c_5 = ‘’’;\+’
\r\n 换行,\s 空格,\t制表符
1.2类型转换
1.boolean不参与转换
2.低精度到高精度自动转换,高精度到低精度是强制转换
3.自动类型转换
byte->short->int->long->float->double
char->
4.强制转换:
删高位
1.3混合运算
-
混合运算,结果的类型为运算中最大的数据类型
-
混合运算中,byte,short,int,char四种中,任意一种或多中进行运算,结果都是int
2.变量和常量
2.1常量/字面量/直接量
/**
- 常量:在整个程序的生命周期中值不可更改(从运行到结束)
- 1.final 修饰的变量 final int i = 2;
- 2.字面量也是常量,又叫直接量,比如直接打印
- @author XX
*@Date 2021年3月23日
*/
2.2变量
/**
- 变量:有名字的内存空间,可以通过名字找到他,更改他,访问它
- 变量目的:通过名字即可找到,操作方便,可重复使用
- 变量声明:数据类型 变量名 ;
- 变量定义:数据类型 变量名 = 值;
- 变量分类:局部变量(方法中声明的变量),静态成员变量(类体中使用static声明的变量),成员变量(类体中没有static声明的变量)
- @author XX
*@Date 2021年3月23日
*/
3.操作符
3.1算数运算符
+、-、*、/、%
++、——
单目>双目>三目
k++和++k如果单独出现,不参与混合运算,没有任何区别
K++ 先参与运算
++k 先自身加一
3.2 位运算符
& :位与,两边都为true,结果才为true
(如果两边是数字,转二进制,每位比较,都是1取1,都是0取0,不一样取0)
|: 位或,一边为true,结果为true
!:位非 ,取反
🗡:位异或,两边不一样为true
&&:短路与,且
||:短路或,
~:按位非,比如0,二进制是 0000 0000 ~0之后就是1111 1111
3.3关系运算符
3.4赋值运算符
=:右边赋值给左边
+=:左边和右边相加,再赋值左边
/+:
-=:
*=:
3.5字符串拼接符
:+,用与把多个字符串拼接成一个字符串,只要左右有一个是字符串就是字符串连接符
3.6三目运算符
语法:boolean表达式?真语句:假语句;