1.前一天重点内容复习:
常量及分类
程序执行过程中,值不发生改变的量
字面值常量
字符串常量 双引号之间的内容
字符常量 单引号之间的内容 字符参与运算,字符的值为ASCII码表中的值
整数常量 默认十进制整数
进制
二进制,八进制,十进制,十六进制
任意非十进制转换到十进制:位权展开法(系数乘基数相加)
十进制转换为任意非十进制:
当前数据除基取余,直到商为零,余数反转。
任意非十进制转换为其他任意非十进制:
方式一:
先将原进制转换为十进制,再将十进制转换为目标进制
方式二:
根据概念,,从右往左以目标类型进制比特位数
为一组,不够补零,算出每一组比特所代表的数,
最后组合到一起,即为目标进制结果。
小数常量 通用小数
布尔常量 true/false
空常量 null 描述引用数据类型的默认值
自定义常量
与关键词fina有关系
变量及变量三要素
在程序执行过程中,值发生改变的量
变量三要素:数据类型,变量名,初始值
数据类型 变量名 = 初始化值;
数据类型 变量名;
变量名 = 初始化值;
Java数据类型
基本数据类型
整数类型 默认类型int
byte 字节类型 1字节 -128~127
short 短整类型 2字节
int 默认类型 4字节
long 长整类型 8字节
浮点数类型 默认类型double
float 单精度类型 4字节
double 双进度类型 8字节
字符类型
char 单个字符 2字节
布尔类型
boolearn true/false 1字节
引用数据类型:
类,接口,数组
计算机计算整数流程
计算机中的数据均为最高符号位+数值位的表示方法,用这种方法表示出来的的数据称为原码
计算机对数据的计算是根据数据的补码来计算的,补码可以由反码得到,反码可有原码得到
对于正整数来说,原码、反码、补码均相同。
对于负整数来说,原码的符号位不变,数值位取反即可得到反码,反码的符号位不变,数值位末尾加一可得补码
2.定义变量注意事项
定义long类型必须在值后面加上标记:L/l,表示定义的是长整型变量
浮点类型默认double,定义单精度float类型的时候,后面需要加上标记F/f
同一个变量,不能被定义多次,因为Java是一个强类型语言,强类型语言的语法和格式非常严谨。
方法中定义的局部变量,在使用前必须进行初始化
3.Java中基本数据类型默认类型提升
byte,short,char三者之间不转换,但是分别自己参与运算的时候优先提升为int、long、float、double
4.Java中的强制类型转换
变量进行计算时,如果接受类型范围小于计算结果的数据类型,则需要强制类型转换
强制类型转换适用于基本数据类型和引用数据类型
格式为 目标数据类 变量名 = (目标数据类型)结果;
强制类型转换会对基本数据类型造成精度损失
5.面试题、
默认类型提升
Java中两个不同类型的数值参与运算,范围小的数值类型自动提升为另一个数值的类型
强制类型提升
将大范围数据类型的数值转换成小范围的数据类型,首先将数值以原类型用二进制表示出来,之后求出反码、补码,将补码按目标类型进行截取,得到截取后的补码,之后求出反码和原码,输出结果即为强制类型转换的结果。
字符串和任何数据之间执行+操作,则代表一个新的字符串
将基本类型转成字符串,只需要在后面拼接一个空串即可
byt类型取值范围:-128~127
+:
代表算数运算符
代表字符串拼接符号
代表数据为正数
6.运算符
算数运算符 + - * / %
++,-- 参与运算时,在数字前先自算再参与运算
赋值运算符 =
+=,-=,*=,/=,%=
运算时,左右两个变量先执行第一个运算符,再将算出的结果的数据类型强制转换为目标类型的数据类型赋值给左边的变量,
比较运算符 < > <= >= != ==
逻辑运算符 逻辑单与&,逻辑单或|,逻辑异或^,逻辑非!
位运算符 基本位与&,位或|,位异或^,逻辑非!,<<,>>,>>>移位符号
三元运算符



