基础知识忘得差不多了,准备补一下基础,这个记下作为笔记。
本资料有错误或不全的地方,欢迎各大佬指正。
一. 数据类型分类
基本数据类型
1)整数型
byte | short | int | long |
---|---|---|---|
1字节 | 2字节 | 4字节 | 8字节 |
8 bit | 16 bit | 32 bit | 64 bit |
2)浮点型
float | double |
---|---|
4字节 | 8字节 |
32 bit | 64 bit |
3)字符型(char)
char |
---|
2字节 |
16 bit |
4)布尔型(boolean)
布尔类型的字节数有大佬解释过,我就直接贴了
https://blog.csdn.net/amoscn/article/details/97377833
类型自动转换
byte > short > int > long > float > double
char > int
-
引用数据类型
1)类(class)
2)接口(interface)
3)数组([])
二. 运算符
1、赋值运算符
= :将右边的值赋值给右边的变量;(a=2)
2、算数运算符
运算符 | 运 算 | 示例 | 结果 | 备注(同种类型进行运算,否则会自动进行类型转换) |
---|---|---|---|---|
+ | 加法 | a=1+2 | a=3 | +在运算符中表示加法运算,而在字符串中用来连接字符 |
– | 减法 | a=3-1 | a=2 | |
* | 乘法 | a=2*3 | a=6 | |
/ | 除法 | a=3/2 | a=1 | 未标明类型时按int类型进行整除,除非改为 float a=3.0/2 将接收变量和参数同时改为浮点型,才能得到1.5 |
% | 取余 | a=3%2 | a=1 | a=3-(int)3/2*2 ;取余运算等同于该运算方法 |
3、自增(自减)运算符
运算符 | 运 算 | 示例 | 结果 | 备注 |
---|---|---|---|---|
++ | 自增 | a=1 ; ++a 或 a++ | a=2 | 单独使用时自增/减符在前和在后无区别,而与其它运算关联时 |
– – | 自减 | a=1 ;- -a 或 a – – | a=0 | 自增/减符在后时,会先取用原数据再进行运算 |
4、关系运算符
运算符 | 运 算 | 示例(a=1;b=2) | 结果(boolean) |
---|---|---|---|
> | 大于 | a>b | false |
< | 小于 | a<b | true |
>= | 大于等于 | a>=b | false |
<= | 小于等于 | a<=b | true |
== | 等于 | a==b | false |
!= | 不等于 | a!=b | true |
5、逻辑运算符
运算符 | 含义 | 说明 | 示例: a 运算符b | 结果(boolean) |
---|---|---|---|---|
& | 逻辑与 | a与b都为true时,则为true,否则为false | false & true | false |
&& | 短路与 | 与&基本逻辑一致,但效率比&更高,当第一个为false时,后面的条件不进行判断 | false && true | false |
| | 逻辑或 | a与b有一个为true时,则为true,否则为false | false | true | true |
|| | 短路或 | 与|基本逻辑一致,但效率比|更高,当第一个为true时,后面的条件不进行判断 | true || false | true |
! | 逻辑非 | 对当前逻辑值取反 | ! false | true |
6、运算符优先级
优先级 | 描述 | 运算符 | 结合性 |
---|---|---|---|
1 | 括号 | ()、[]、{} | 从左至右 |
2 | 正/负号、自增自减、非 | +、-、++、- – 、! | 从右至左 |
3 | 乘、除、取余 | *、/、% | 从左至右 |
4 | 加减 | +,- | 从左至右 |
5 | 位运算 | <<、>>、>>> | 从左至右 |
6 | 大小关系 | <、>、>=、<= | 从左至右 |
7 | 相等关系 | ==、!= | 从左至右 |
8 | 按位与 | & | 从左至右 |
9 | 按位异或 | ^ | 从左至右 |
10 | 按位或 | | | 从左至右 |
11 | 逻辑与 | && | 从左至右 |
12 | 逻辑或 | || | 从左至右 |
13 | 条件运算 | ?: | 从右至左 |
14 | 赋值运算 | =、+=、-=、*=、/=、%=、>>=、<<=、&=、^=、 | =、>>>= | 从右至左 |
三. 二进制
1、原码、反码、补码
原码:整数转换为二进制就是原码,正数原码反码补码一致
反码:对原码按位取反,最高(符号位)确定为1。
补码:反码+1.
计算机里都是以补码的形式存储数据。
2、位运算
运算符 | 说明 | 示例:6 -> 0000 0110 | 结果 |
---|---|---|---|
>> | 右移 | 6>>2 -> 0000 0001空缺位补最高位 (-1>>2 ->1111 1111) | 1(-1) |
<< | 左移 | 6<<2 -> 0001 1000(空缺位补0) | 24 |
>>> | 无符号右移 | 6>>>2 | 1 |
& | 与运算 | 6&3 (同为1则为1,否则为0) | 2 |
| | 或运算 | 6 | 3 (一个为1则为1,否则为0) | 7 |
^ | 异或运算 | 6 ^ 3 (相同则为0,否则为1) | 5 |
~ | 反码 | ~6(按位取反) | -7 |
版权声明:本文为qq_44745364原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。