面试题 - 刁钻

记录下 遇到的 一些 刁钻 面试题:

[b]嘿嘿[/b] i++ & ++i & 基本类型 传值

public class Test {
public static void main(String[] args) {
int i = 0;
Test t = new Test();
t.increase(i);
i = i++;
// 此处输出 0
System.out.println(i);
}

public void increase(int x) {
x = x + 1;
}
}


[b]嘿嘿[/b] 超类 & 子类 的构造函数调用顺序,子类调用超类构造函数时必须放在第1个语句

public class Aa {
public Aa() {
System.out.println("Aa");
}
}
public class Bb extends Aa {
public Bb() {
System.out.println("Bb");
// 此处调用是错误的,因为 子类构造函数调用超类构造函数时,必须在第1个语句调用,
super();
}

public static void main(String[] args) {
Bb b = new Bb();
}
}



[b]嘿嘿[/b] String.split() & 正则表达式

public static void main(String[] args) {
// String.split(regex) 其实是调用了 Pattern.compile(regex).split(),其中对 特殊字符 和 头、尾部空字符的处理
String[] ss = "|A|B|C".split("|");
// 答案是6,数组为 :[, |, A, |, B, |, C],其中 | 被看做或,即,以空字符分隔,且尾部的空字符忽略,头部的保留,因此有6个
System.out.println(ss.length);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值