字节跳动花千万年薪从阿里挖人,急了

大家好,我是鸭鸭!

一个月前就有瓜说,阿里决定以违反竞业协议为由仲裁通义大模型的前员工周畅。

周畅是什么人?

从领英上的介绍来看,他 17 年加入阿里,20 年的时候就开始在阿里达摩院带领团队训练名为“M6”的多模态模型。2023 年 ChatGPT 爆火后,他所在的团队在“M6”的基础上研发了“通义千问”大模型。该模型也是如今阿里通义系列 AI 产品的技术底座。

这次周畅被爆出跳槽字节,阿里肯定要急了。

今年 7 月的时候,周畅表示要离职创业,业内还在猜测他的创业方向和进展。没想到,转头他就加入了字节。

图片

周畅在阿里是 P9 职级,字节为周畅提供了 4-2 的职级和 8 位数的年包,8位数我数了数有点麻。

这次字节敢公开,一来是因为除了周畅外,还挖了周畅团队的其他不少成员,而来恐怕也是做好了替周畅付竞业协议的索赔。据说和周畅一起跳槽字节的原团队成员,这次也都拿到了 4-1、3-2 的职级。

阿里留不住人,是字节给的实在是太多了,还是阿里给的实在太少了?

不过要拿到这样的机会,还是需要自身能力够硬。

大家怎么看呢?

继续今天的面试题:

什么是 Java 中的自动装箱和拆箱?

回答重点

自动装箱(Autoboxing):指的是 Java 编译器自动将基本数据类型转换为它们对应的包装类型。比如,将 int 转换为 Integer

自动拆箱(Unboxing):指的是 Java 编译器自动将包装类型转换为基本数据类型。比如,将 Integer 转换为 int

主要作用:

  • 它在 Java 5 中引入,主要是为了提高代码的可读性,减少手动转换操作,简化了代码编写,开发者可以更方便地在基本类型和包装类型之间进行转换。

常见于:

  • 集合类如 List<Integer> 中无法存储基本类型,通过自动装箱,可以将 int 转换为 Integer 存入集合。
  • 自动装箱和拆箱经常在算术运算中出现,尤其是包装类型参与运算时。

扩展知识

自动装箱与拆箱的底层实现

自动装箱和拆箱并不是通过语法糖实现的,它是通过调用包装类型的 valueOf()xxxValue() 方法实现的。

  • 自动装箱调用:Integer.valueOf(int i)
  • 自动拆箱调用:Integer.intValue()

示例:

Integer a = Integer.valueOf(10);  // 自动装箱
int b = a.intValue();             // 自动拆箱

自动装箱与拆箱的注意点

性能影响

自动装箱和拆箱虽然简化了编码,但在频繁使用的场景,可能导致性能开销,尤其是在循环中频繁发生装箱或拆箱时,容易引入不必要的对象创建和垃圾回收。

所以尽量避免在性能敏感的代码中频繁使用自动装箱和拆箱。例如:

Integer sum = 0;
for (int i = 0; i < 10000; i++) {
    sum += i;  // sum 是包装类型,导致多次装箱和拆箱
}
NullPointerException

在进行拆箱操作时,如果包装类对象为 null,会抛出 NullPointerException。示例:

Integer num = null;
int n = num;  // 抛出 NullPointerException
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值