java初学者知识小总结-01(byte数据类型赋值出错)
来源:互联网 发布:德卡斯特里奥算法 编辑:程序博客网 时间:2024/06/05 04:44
数据类型
1.byte数据类型的说道
给byte数据类型赋值的时候很多时候会出现问题,说是Type mismatch: cannot convert from int to byte,这是因为byte赋值的右侧不能出现变量,
给个例子看看:
byte a=4;
a=a+4;
这是程序就会出现上述的问题,因为java中常量的默认类型都是int类型的,当进行赋值操作的时候,如果像这个一样,赋值给byte类型的数据,这是系统内部会先判断这个数据是否超过byte类型的最大范围(-128~127),如果没有超过则可以正常赋值,超过了会报错,但当程序执行到a=a+4这一句时,系统不能判断a+4是否在范围内,有的人会问了,a=4,a+4=8,是在范围内啊,但是可要知道了,这里的a是一个变量,变量顾名思义就是数值可以变化的量,说不定哪天有人把a=4这句改为a=127,这不就不行了么,,,
其中short类型和byte类型是一样的,如果赋值变量右侧有变量存在,都有可能会报错,,,
但是int类型不是这样的,如果右侧有变量,而且超过了int类型所涵盖的最大值,它就不会报错,只会溢出,
还有一个符号要注意+= -= *= /=
这里就说一个+=
我们都知道a+=2;和a=a+2;效果是一样的,但这不是完全正确的,例如:
short s=4;
s+=2;
//s=s+2;如果写这句就会出错,原因和上面是一样的,赋值符号右侧有变量了,但是s+=2;这句话就是可以的,因为执行这句话的时候系统会先判断付给s的数是否超过它的范围,如果超过了,报错,没超过,强制类型转换之后进行赋值,所以就知道了,s+=2,这句话其实是等同于(在s是short类型时)s=(short)(s+2)
System.out.println(s);
- java初学者知识小总结-01(byte数据类型赋值出错)
- java初学者知识小总结-02(6.29)
- java初学者知识小总结-03(6.30)
- java小知识-byte类型
- Java中byte[]小知识
- 初学者的java小知识
- ACM 编程 出错 小知识 总结 (continue update)
- JAVA编程思想---基本数据类型总结(byte,char)
- java小知识总结
- Java基本数据类型知识总结
- java综合小知识 容易出错
- java数据类型转换小总结
- 字符串赋值小知识
- 有关java中数据类型byte,int的一个小问题
- java 基础小知识 总结
- java部分知识小总结
- java 课堂小知识总结
- java 课堂小知识总结
- ios官方开发文档
- java中实现代理及委托代理模式
- 高效 , 极致, 口碑, 快
- Android中的Handler, Looper, MessageQueue和Thread.关系
- Unity ----- 对象池GameObjectPool
- java初学者知识小总结-01(byte数据类型赋值出错)
- unity的自动寻路之 ------ wayPoint寻路的实现方式
- unix环境高级编程----进程控制wait()
- Storm开发过程中遇到的Topology “hang"问题
- spring学习笔记(7)——spring事务管理方式
- 启动oracle服务和监听的批处理
- 1.hibernate入门
- Html5无刷新修改Url,history pushState/replaceState
- C/C++中static关键字详解