基础知识忘得差不多了,准备补一下基础,这个记下作为笔记。
本资料有错误或不全的地方,欢迎各大佬指正。
一. 数据类型分类
基本数据类型
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 版权协议,转载请附上原文出处链接和本声明。