面试复盘总结

Object常见方法?

1、hashCode和equale函数用来判断对象是否相同,
2、wait(),wait(long),wait(long,int),notify(),notifyAll()
3、toString()和getClass,
4、clone()
5、finalize()用于在垃圾回收

java8新特性?

1、Lambda表达式;
2、方法引用;
3、默认方法;
4、新编译工具;
5、Stream API;
6、Date Time API;
7、Option;
8、Nashorn javascript引擎

Vue子父之间传值?

1、父向子传值props
2、子组件向父组件传值$emit

Java和C++的区别?

1、C++比Java执行速度快,但是Java可以利用JVM跨平台。
2、Java是纯面向对象的语言,所有代码(包括函数、变量)都必须在类中定义。而C++中还有面向过程的东西,比如是全局变量和全局函数。
3、C++中有指针,Java中没有,但是有引用。
4、C++支持多继承,Java中类都是单继承的。但是继承都有传递性,同时Java中的接口是多继承,类对接口的实现也是多实现。
5、C++中,开发需要自己去管理内存,但是Java中JVM有自己的GC垃圾回收机制机制

多线程的常见应用场景:

1、后台任务,例如:定时向大量(100w以上)的用户发送邮件;
2、异步处理,例如:发微博、记录日志等;
3、分布式计算

查询出连续两天登陆,或连续多天登陆的用户:

当时面试想半天也没想到时间可以有序排序集合查询,emo了

public static void main(String[] args) {
     SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");

     //1、sql执行获取集合 select * from if_user order by createTime asc;
     List<User> users = new ArrayList<>();
     Date today = new Date(System.currentTimeMillis() - 1000 * 60 * 60 * 24);
     Date yestDay = new Date(System.currentTimeMillis() + 1000 * 60 * 60 * 24);
     users.add(new User("001",today));
     users.add(new User("001",today));
     users.add(new User("001",new Date()));
     users.add(new User("002",new Date()));
     users.add(new User("001",yestDay));
     users.add(new User("002",yestDay));
     users.add(new User("003",yestDay));

     Map<String, Date> mapDate = new HashMap<>();
     Map<String, Integer> mapCount = new HashMap<>();

     for (User user : users) {
         Date date=new Date(user.getCreateTime().getTime() - 24*60*60*1000);
         if (mapCount.get(user.getUid()) != null) {
             if (sameDate(date,mapDate.get(user.getUid()))) {
                 mapCount.put(user.getUid(),mapCount.get(user.getUid())+1);
             }
         } else {
             mapCount.put(user.getUid(),1);
         }
         mapDate.put(user.getUid(),user.getCreateTime());
     }

     System.out.println(mapCount);
 }

public static boolean sameDate(Date d1, Date d2){
    SimpleDateFormat fmt = new SimpleDateFormat("yyyyMMdd");
    //fmt.setTimeZone(new TimeZone()); // 如果需要设置时间区域,可以在这里设置
    return fmt.format(d1).equals(fmt.format(d2));
}

@AllArgsConstructor
@Table(name = "if_user")
@Data
class User {
    private String uid;
    private Date createTime;
}

在这里插入图片描述

自我总结:
1、项目介绍无突出点
2、人事问题待加强
3、该刷一刷题,练练脑子了。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小梦ITSuper

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值