(一).进制
1.在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0),例如,像a、b、c、d这样的52个字母(包括大写)、以及0、1等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示,而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了ASCII编码,统一规定了上述常用符号用哪些二进制数来表示。
2.在计算机中8个二进制表示一个字节
3.进制的表示形式:把三个二进制数表示一位数是八进制,把四个二进制数表示以为是十六进制
(二)进制的转换
1.二进制和十进制中间的转换
从上图可以看出一个字节的最大数为255(一个字节所有的八个二进制数都为一的时候)
负数的二进制表现形式
* 八种基本类型
byte 1-2^7 到 2^7-1
short 2-2^15 到 2^15-1
int 4-2^31 到 2^31-1
long 8-2^63 到 2^63-1
float 4
double 8
IEEE 美国电气工业协会浮点数表示规范
char 2
boolean 1
true
false
基本类型字面值
=========================================
1. 整数字面值是 int 类型
int a = 5454;
byte a = 5454;//错
long a = 9999999999;//错,右侧字面值是int 类型,99亿超出int范围
long a = 9999999999L;//对,右侧是 long 类型
2. byte,short,char 三种比 int 精度低的整数,
可以使用范围内的字面值进行赋值
byte a = 2;
byte a = -129;// 错
3. 后缀
L - 长整形
F - float 类型
D - double 类型
4. 浮点数字面值是 double 类型
float a = 3.14; //错,右侧字面值是 double 类型
float a = 3.14F;//对
5. char 类型字面值
char a = 'a';
char a = 97;
char a = '中';
char a = '\u0061';
6. boolean 类型字面值
boolean a = true;
boolean a = false;
类型转换
======================================
* 低精度类型可以自动转为高精度类型
byte->short->char->int->long->float->double
byte a = 3;
int b = a;
float c = b;
* 高精度类型转为低精度类型,需要强制转型
int a = 128;
byte b = (byte) a;// 当心数据精度损失
求模
===========================================================
就是取余数,如果右边为1为0,左边比右边小为左边,如果有负数当左边为负数时结构为负数,右边不管。
==================================================================================
逻辑运算符
//逻辑运算符用于连接boolean类型的表达式。
//x>3 & x<6 = true & true = true;
/*
true & true = true;
true & false = false;
false & true = false;
false & false = false;
& : 只要两边的boolean表达式结果,有一个为false。那么结果就是false。
只有两边都为true,结果为true。
*/
/*
true | true = true;
true | false = true;
false | true = true;
false | false = false;
| : 两边只要有一个为true,结果为true。
只有两边都有false,结果为false。
*/
/*
^ : 异或;就是和|有点不一样。当true ^ true = false;
true ^ true = false;
true ^ false = true;
false ^ true = true;
false ^ false = false;
^ : 两边相同结果是false。
两边不同结果是true。
*/
=======================位运算符=========================================
位运算符计算