常量的概述和使用
常量是指在程序执行的过程中不会发生改变的。Java中的常量分类分为字面值常量和自定义常量(面像对象部分)
字面值常量
| 整数常量 | 所有整数 |
| 小数常量 | 所有小数 |
| 字符常量 | 用单引号括起来的内容里面只能放单个数字单个字母或单个符号 |
| 布尔常量 | 较为特殊,只有true和false |
| 字符串常量 | 用双引号括起来的内容 |
| 空常量 | NULL数组部分讲解 |
单个数字指0-9.
不同进制的表现形式
二进制数字前面+0b/B(JDK1.7版本可以表现二进制)
八进制以0-7组成以0开头
十进制是默认的
十六进制是以0x/X开头的
输出时都是十进制B
快速的进制的转换法
8421码是中国大陆的叫法,8421码是BCD代码中最常用的一种,这种编码方式的每一位二指代码的1都是一个固定的数值,把每一位的1代表的十进制加起来就是它所代表的十进制数码。
原码反码补码
后面学习的强制类型转换需要用到
原码:二进制定点表示法,即最高位是符号位,“0”表示正“1”表示负,其余表示数字的大小
反码:正数的反码与原码相同,负号的反码是对其原码逐位取反,但符号位除外。
补码:正数的补码与原码相同,负数的补码是在其反码末位+1.
变量的概述以及格式
变量就是在程序执行的过程中,在某个范围内其值可以改变的量
定义的格式:数据类型 变量名 = 变量值
数据类型的概述和分类
JAVA是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间
基本数据类型:
整数型
如果long类型后面加L进行标识最好加L毕竟1 l还是很容易混淆的,傻傻分不清楚了就是说。
| byte占一个字节 | -127~128 |
| short占两个字节 | -2^15~2^15-1 |
| int 占四个字节 | -2^31~2^31-1 |
| long占八个字节 | -2^63~2^63-1 |
浮点型
float类型后面需要加f或者F的标识否则会损失精度
| float占四个字节 | -3.403E38~3.403E38 |
| double占八个字节 | -1.789E308~1.798E308 |
字符型
char 占两个字节 0~65535
布尔型
Boolean理论上是占八分之一个字节,因为一个开关就可以决定true或者是flase了,但是java中没有明确它的大小
使用变量的注意事项
- 同一个区域不能使用相同的变量名
- 局部变量在初始化时必须赋值
- 一条语句可以定义几个变量
数据类型转换
1.隐式转换(小范围提升为大范围)
int x = 3;
byte b = 4;
x = x + b;
结果是x = 7
byte占一个字节int占四个字节运算时byte的一个字节补成四个字节然后相加
2.强制转换
int x = 3;
byte b = 4;
b = x + b;
依旧是小范围提升为大范围,所以相加之后是int型,int型赋值给byte型会损失精度,因此需要用到强制转换
b = (byte)(x + b)
但是强制转换会损失精度
得出的结果是剩余的八位求其反码再求原码的结果
整数默认类型就是int所以整数计算都会提升为int
byte b4 = 3 + 4;//java编译器有常量优化机制,所以正确
float取值范围比long大
字符和字符串参与运算
当字符与数进行运算时,字符会转换为int型对应其ASCII码表
任何数据类型用加号与字符串相连接,都会产生新的字符串
char数据类型
char c= 97 //输出的是a对应的是ASCII
char字符也可以存储中文
算术运算符的基本用法
++和--的用法
int a = 1;
a = a++;
输出结果:a = 1;
相当于:
int a = 1;
int t;
t = a;
a = a + 1;
a = t;



