小米一面面经(Java岗)
攒个人品
顺便吹一下小米面试官,真的很nice,面试体验超棒
1. 自我介绍
2. 实习经历:
a) 工作内容是什么
b) 说一下比较有难度的项目经历
3. Integer、Long 相关问题:
// 我就直接用代码描述了 Long a = 100L, b = new Long(100L); System.out.println(a == b); Long a = 100L, b = 100L; System.out.println(a == b); Integer a = 100; Long b = 100L; System.out.println(a.equals(b));4. Java中所有类的基类是什么?
5. hashcode()、equals() 相关问题:
a) hashcode() 方法的作用
b) 什么时候重写 hashcode() 和 equals()
c) == 和 equals() 的区别
6. 如何判断一个数是2的幂?(面试官真的超nice!!!我没有思路时还很耐心的提醒我)
刚开始我的思路是将其转换成2进制表示,然后点二进制中1的个数,需要循环32次。
面试官问还有没有思路,我想了一会。
期间面试官提醒我2的幂在二进制中的特点,又提醒我位操作有:与、或、非
然后我立马想到以下思路:
private static boolean judge(int a) { int b = a - 1; return (a & b) == 0; }7. 说一下数据库范式
8. 给一个学生表,字段包括:学号、分数,写一个查询SQL满足以下条件:
a) 分数小于60分
b) 按分数分组,即每个分数中有多少个学生
b) 按分数分组,即每个分数中有多少个学生
9. 你的Linux常用命令有哪些
10. vi如何设置使其显示行数(我不会...)
11. 有10个文件,如何查看每个文件的总行数
#面经##小米##Java工程师##校招#