A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

第二天的学习开始了,怕个吊,加油
位运算符
A&15可以取到最低四位
A>>4
60&15=12;
temp=60>>4
temp&5=3;

0-9   A   B   C   D   E   F
      10 11 12 13 14 15
12-10=2+'A'=(char)67;//这个应该是关键的算法



老师讲解作业
代码是可以优化的
是否需要改进呢
print()  必须要参数
println()  这个可以是空参数  表示换行
计算机底层只是识别二进制
进制在开发中是不使用的,只是了解

内容目录:
常量与变量
进制
数据类型转换
运算符

字面值常量
自定义常量

注意,浮点数的储存和小数的储存是不一样的,java里面的浮点数是无法参与运算的,也不适用于8421
float比long还要大,因为是浮点数

Constant
“abc”字符串
   123  整数
  12.3小数
'10'   字符  这里是两个字符
单个字符,数字,字母
字符里面,1 不能放多 2 不能不放(因为代表不了任何字符)
''  这是不对的 ' ' 空格字符
字符串可以是null
boolean:true,false

进制:碰到了x就进一
1byte=8bit
1k=1024b
1m=1024k
1g=1024m
1t=1025g

真的是一直在进步呀
计算机是1024为单位
厂商是1000位单位

进制越大,表现形式越短
计算机存储数据的最小单位是字节 byte
也就是8位

0b  001 二进制  b不区分大小写
0  开头  八进制
默认   十进制
0x  十六进制   x不区分大小写

0b-001
0-100
023
0x-100

老师说的重点,要仔细去听的,学习要分清主次
进制转换
系数:每一位上的数据
基数:X进制,基数是X
权:从0开始,一次加大

二进制 转 十进制
0b-100=4

八进制 转 十进制
0-100=1*8^2=64

十六进制 转 十进制
0x-100=1*16^2=256
三种进制,转 十进制  基数

十进制 转 任意进制  (相除)
除  基数(进制数) 倒取余数

十进制 转 二进制  除2
十进制 转 八进制 除8
十进制 转 十六进制 除16

8421码就是每一个位置对应一个值

原码
反码
补码
整数的相同
负数的取反,但是符号位除外
负数的补码,在反码的末位加1

运算都是以补码运算
反码是为了求补码的

计算机底层全部是二进制的补码来储存的呀
如果是整数就不需要求了,因为都是一样的
如果是long类型的最好是大写的L
因为l太像1了,容易出错
long和float需要加后缀   L F

数据类型的转换  强转以及隐式转换
byte b1=3;
byte b2=4;
bayte b3=b1+b2;
如果两个相加,那么就是int类型

两方面
1 byte与byte(或者short,char)运算的时候会提升为int
2 两个变量,存储的值在变化,编译的时候无法判断里面具体的值,相加可能会超出byte的范围
byte b4=3+4;//java编译器有常量优化机制
3,4是常量,可以判断值的范围,是7可以赋值过去
判断7在byte的范围之间
byte b=7;

但是变量是变化的,无法判断值是否超出范围
char类型是无符号位的,没有负数  65536-1(还要表示一个0) 只是正数  char 正数范围比short大  short<char(不具备可比性)
其他的都是负数和正数各一半
float 有指数位
次序

计算机只是认识0与1

映射关系
美国信息交换标准码
ASCII码
字符和数值对应的关系  每一个字符对应的整数值,因为计算机只能够存储数值  int类型的就可以表示了
   
              字符和数值的一一对应关系
float f=5+5.5;            这个不可以的,因为没有常量优化
float f=5+5.5f;   实现一个需求有很多种方法


运算符
算术  + - *  /
赋值
关系  boolean类型

      任何正整数%2不是0就是1可以用来当做切换条件
1 代表真 0 代表假
两个对立的值   可以用1与0 来代替

逻辑删除
1的时候存在
0的时候逻辑删除

一般不允许删除数据的
大数据,就是统计数据
数据很有价值的

a 单独使用,放在前面和后面是一样的
b 参与运算  ,就不一样了

b++;  b=(byte)(b+1);  
a+=4;也是隐含了转换的动作

b=b+1;  提升为int 会损失精度  
后者是会报错的

int a=3;3赋值给a

day02 :复习:抓主要部分
二进制补码的形式  存储数据
变量的概念
1 初始化,再使用  int a=b=c=5;  逗号,隔开
使用之前,手动初始化            引用变量,默认为null
2 数据类型:限制变量变化的范围
所有类都是对象,但是八种基本数据类型不是对象,不在研究范围之内  为了解决这个问题,设计了八个类  这八个类都是对象
3 类型转换  突破范围的限制

在实际开发中,谨慎使用强制转换
除非完全确定可以,否则,请不要强制转换

运算符
算术
赋值
比较

改进:提升用户体验,很重要的问题
所有的效果,放在了用户体验上面
优化和特效做到了极致,让人感觉非常好
如何改进




0 个回复

您需要登录后才可以回帖 登录 | 加入黑马