一、请问整型操作符的操作元数据是什么并操作符有哪些?
答:元数据:byte,short,char,int和long。
①一元操作符:-,~,++,--。++,--会改变所作用的变量的值。-和~操作符并不改变变量本身的值。
②二元操作符:并不改变操作元的值,而是返回可以赋给其他变量的值。
数学运算操作符:+,-,*,/,%.
位运算操作符:&,|,^,<<,>>,>>>。
③浮点型操作符:++,--,+,-,*,/,%。
④比较操作符和逻辑操作符:<,>,<=,>=,==,!=;&&,&,||,|,!。
⑤特殊操作符:?:
⑥字符串连接操作符:“+”
对于JDK1.5以上的版本,允许数字基本类型与数字包装类型进行混合数学运算,例如1+new Integer(2)+2是合法的。
⑦“==”和equals()方法
“==”既可以比较基本类型,也可以比较引用类型,这时这两个引用变量必须都引用同一个对象。
equals只能比较引用类型,比较的是两个对象是否相等。
⑧instanceof操作符:用于判断一个引用类型所引用的对象是否是一个类的实例。
二、请问基本类型数据是如何转换的?
答:①自动类型转换:从低位(取值范围小的)到高位(取值范围大的)。是安全的,不会出现数据溢出或精度下降的情况。
byte<short<int<long<float<double
②强制类型转换:把高位类型赋值给低位类型,必须进行强制类型转换。有可能会导致数据溢出或精度的下降。
三、请问引用类型数据是如何转换的?
答:子类赋值给直接或间接父类,会自动进行类型转换。
父类赋值给直接或间接子类,需要进行强制类型转换。