Java基础再次回顾:
java强制转换的思考;强制转换数据溢出后的结果怎么计算?(byte b=(byte)130 原反补码);
字符串参与运算:
System.out.println("hello"+'a'+1);//输出为helloa1
System.out.println('a'+1+"hello");//输出为98hello
总结如下:字符串数据和其他数据做+,结果是字符串类型;这里的+不是加法运算,而是字符串连接符
java常见的命名规则:
包:全部小写(单级包:zyy;多级包:com.baidu)
类或者接口:首字母大写(一个单词:Student;多个单词:HelloWorld)
方法或者变量:首字母小写(一个单词:name;多个单词:从第二个单词开始,每个单词首字母大写)
基本数据类型(四类八种):
整数: 占用字节数
byte 1
short 2
int 4
long 8
浮点数:
float 4
double 8
字符:
char 2
布尔:
boolean 1
赋值运算符的面试题:
面试题: short s=1;s=s+1;
short s=1;s+=1;
上面两个代码有没有问题呢?如果有,问题在哪儿呢?
第一个是有问题的,可能会损失精度(s+1过后就是int型,在输出为short型就会损失精度)
第二个是没有问题的,扩展的赋值运算符其实隐含了一个强制类型转换
s+=1;不是等价于s=s+1;二十等价于s=(s的数据类型)(s+1);
&&和&的区别在哪儿呢?同理,||和|的区别?
A:最终结果是一样的
B:&&具有短路效果,左边是flase,则右边不执行。
同理 ||具有短路效果,左边为true,则右边不执行。
位运算符的基本用法(了解就行)