java零基础的坎坷之路【2】
1、byte、short、char类型的变量参与运算时,首先转换为int类型。
赋值运算符隐含了一个强制类型转换:
如:short s = 1;
s += 1;
编译不会报错,但是 s = s+1; 会报错!
2、异或的面试题:交换两个变量!
考点:一个变量被另一个变量异或两遍,还是原来的数据。
方式一、
a = a ^ b;
b = a ^ b;
a = a ^ b;
方式二、
a = a + b;
b = a - b;
a = a - b;
方式三、
b = (a + b) -(a = b);
3、左移<<和右移>>
左移一位 等价于 乘2
右移一位 等价于 处2
4、java中的数组必须初始化之后才能用
5、栈内存的数据用完就释放掉了,堆内存的数据用完后会在垃圾回收机制空闲的时候被释放
6、杨辉三角数组的思路:从第三行开始,除去第一个元素和最后一个元素,每一个元素都是上一行的前一列元素+上 一行的该列元素;每一列和最后一列的元素都是1